F.module("/static/question/ui/card/card.js",
function(c, e) {
    var d = c("/static/common/lib/tangram/base/base.js");
    var k = c("/static/common/ui/tip/tip.js");
    var i = c("/static/common/ui/event/event.js");
    c("/static/common/ui/hi/hi.js");
    function j(o) {
        var s = o.toString(),
        w = parseInt(s.split("").reverse().join(""), 10),
        p = ["", "十", "百", "千", "万"],
        u = ["零", "一", "二", "三", "四", "五", "六", "七", "八", "九", "十"],
        t = s.length,
        v = "",
        q = w.toString().length;
        for (var r = 0; r < q; r++) {
            v += (r == 0 && t == 2 && (w % 10) == 1) ? "": u[w % 10];
            v += (w % 10) == 0 ? "": p[t - r - 1];
            w = Math.floor(w / 10)
        }
        return v
    }
    function h(n) {
        var o = d.url.jsonToQuery(n);
        d.post("/c/oi_cv/cv", o)
    }
    function m(q) {
        var r = q.user,
        w = q.imId,
        p = q.userName,
        G = q.passPhoto,
        y = r.iconType,
        v = r.sex,
        E = r.gradeIndex,
        t = j(r.gradeIndex),
        o = r.carefield,
        s = r.isFromTeam,
        z = r.teamName,
        u = r.isAuth,
        n = r.authTitle,
        A = r.isUserAdmin,
        J = r.userAdminLevel,
        I = r.userAdminTitle,
        C = r.isFamous,
        H = r.isMaster,
        D = r.goodRate || 0,
        B = r.grAnswerNum || 0;
        var x = '<div class="card-shadow line"><div class="user-card" id="user-card-' + w + '"><div class="line"><div class="grid avatar-66 mr-10"><a class="avatar-normal-a" href="http://www.baidu.com/p/' + p + '?from=zhidao" target="_blank">';
        if (G == 1) {
            x += '<img class="avatar-normal-img" src="http://himg.bdimg.com/sys/portrait/item/' + w + '.jpg" /></a></div>'
        } else {
            x += '<img class="avatar-normal-img" src="http://img.baidu.com/img/iknow/avarta/66/r' + y + "s" + v + "g" + E + '.gif" /></a></div>'
        }
        x += '<div class="grid"><p class="card-name"><a href="http://www.baidu.com/p/' + p + '?from=zhidao" class="user-name f-yahei v-middle" target="_blank">' + p + "</a>";
        if (u == "1") {
            x += '<a class="i-auth ml-5" title="' + n + '" target="_blank" href="http://zhidao.baidu.com/s/auth"></a>'
        }
        if (C == "1") {
            x += '<a class="i-famous ml-5" title="知道名人" href="http://www.baidu.com/search/zhidao/userelite.html" target="_blank"></a>'
        }
        if (H == "1") {
            x += '<a class="i-master ml-5" title="知道达人" href="http://www.baidu.com/search/zhidao/userelite.html" target="_blank"></a>'
        }
        if (A == "1") {
            if (J == 0) {
                x += '<a href="http://www.baidu.com/search/zhidao_help.html#如何选择头衔" target="_blank" class="i-user-admin-0 ml-5" title="' + I + '"></a>'
            } else {
                if (J == 10000) {
                    x += '<a href="http://www.baidu.com/search/zhidao_help.html#如何选择头衔" target="_blank" class="i-user-admin-10000 ml-5" title="高级管理员"></a>'
                } else {
                    x += '<a href="http://www.baidu.com/search/zhidao_help.html#如何选择头衔" target="_blank" class="i-user-admin-' + J + ' ml-5" title="' + I + '"></a>'
                }
            }
        }
        x += '</p><p><a class="f-info" href="http://www.baidu.com/search/zhidao_help.html#如何选择头衔" target="_blank">' + t + "级</a>";
        x += '<span class="ml-10 f-info">采纳率：' + D + "%</span>";
        x += '<span class="ml-10 f-info">采纳数：' + B + "</span>";
        x += '</p><p><a href="#" alog-action="qb-ask-user" class="btn btn-22-white fixed-ask fixed-ask-normal f-green" username="' + p + '"><em><b>求助知友</b></em></a></p></div></div>';
        if (F.context("user").passPhoto != 1 && G == 1) {
            x += '<div class="custom-avatar-tip ik-tip line mt-10"><div class="tip-inner"><div class="tip-box"><div class="tip-body">5级及以上用户可以设置真实头像~</div></div></div></div>'
        }
        x += '<div class="card-info mt-10 pt-5"><p><span class="f-bold">擅长领域：</span>';
        if (o && o.length) {
            d.forEach(o,
            function(L, K) {
                x += '<a class="mr-5" href="/browse/' + L.cid + '" target="_blank">' + L.cname + "</a>"
            })
        } else {
            x += "<span>暂未定制</span>"
        }
        x += "</p>";
        if (s) {
            x += '<p><span class="f-bold">参与团队：</span><a href="/team/view/' + z + '" target="_blank">' + z + "</a></p>"
        }
        x += "</div></div></div>";
        return x
    }
    function b(o, p) {
        if (d(".user-introduce", p.getTipBody()).length == 0) {
            var n = "/authentic/desc?userName=" + encodeURIComponent(o.userName) + "&t=" + (new Date()).getTime();
            d.get(n,
            function(s, t, r) {
                var q = s.desc ? d.string(s.desc).subByte(60, "...") : "暂无";
                d(".card-info", p.getTipBody()).append('<p><span class="f-bold">个人简介：</span><span class="user-introduce">' + q + "</span></p>")
            },
            "json")
        }
    }
    function f(n) {
        d("#user-card-" + n.imId + " .fixed-ask").one("click",
        function(o) {
            o.preventDefault();
            F.use("/static/common/ui/fixed-ask/fixed-ask.js",
            function(p) {
                p(n.userName)
            })
        })
    }
    function a(n) {
        var z = n.userName,
        B = n.userNameEnc,
        w = n.imId,
        A = n.user,
        x = A.expertExcellent,
        p = A.expertField,
        o = A.expertTitle,
        s = A.expertName,
        v = A.expertAvatarSrc,
        q = A.expertPartnerLogo,
        t = A.expertPartnerUrl,
        r = A.expertIntro;
        var u = (x == 1) ? s: (p + o + s);
        var y = '<div class="card-shadow line"><div class="user-card" id="user-card-' + w + '"><div class="line mb-10"><div class="grid avatar-66 mr-10"><a class="avatar-expert-a" href="/expert/view/' + B + '?ie=gbk" target="_blank">';
        y += '<img class="avatar-expert-img" src="' + v + '" /></a><i class="i-zhuan-avatar" title="权威专家"></i></div>';
        y += '<div class="grid"><p class="card-name"><a href="/expert/view/' + B + '?ie=gbk" class="user-name f-yahei v-middle" target="_blank">' + u + "</a>";
        y += '</p><p class="mt-20 pt-5"><a href="#" class="btn btn-22-white fixed-ask fixed-ask-expert f-green" username="' + z + '"><em><b>咨询专家</b></em></a></p></div></div><div class="card-info pt-5"><p><span class="f-bold">专家简介：</span><span>' + d.string(r).subByte(150, "...") + "</span></p>";
        y += '<p><span class="f-bold">合作机构：</span><a href="' + t + '" target="_blank"><img class="v-middle" src="' + q + '" /></a></p></div></div></div>';
        return y
    }
    function l(r) {
        var p = r.userName,
        z = r.imId,
        s = r.user,
        n = s.openExcellent,
        v = s.openSiteType,
        q = s.openSiteName,
        G = s.openUserTitle,
        x = s.openAvatarSrc,
        D = s.openSiteUrl,
        t = s.openSiteId,
        I = s.openSiteCid,
        H = s.openShowType,
        w = s.openCardSrc,
        u = s.openCardUrl,
        B = s.openNewAnswer,
        E = s.openSiteLevel,
        o = s.openSiteInfo,
        y = (v == 1) ? "i-company-avatar": "i-government-avatar",
        K = (v == 1) ? "企业知道官方客服": "政府机构官方人员";
        var A = '<div class="card-shadow line"><div class="user-card open-card line" id="user-card-' + z + '"><div class="grid open-content"><div class="line mb-10"><div class="grid avatar-66 mr-10"><a class="avatar-open-a" href="' + D + '" target="_blank">';
        A += '<img class="avatar-open-img" src="' + x + '" /></a><i class="' + y + '" title="' + K + '"></i></div>';
        A += '<div class="grid"><p class="card-name"><a href="' + D + '" class="user-name f-yahei v-middle" target="_blank">' + q + (G ? ("-" + G) : "") + "</a>";
        if (E > 0) {
            A += '<a class="ml-5 open-level open-level-' + E + '" href="http://hi.baidu.com/openkw/item/32d77ff4ea031f51c8f33767" target="_blank"></a>'
        }
        A += '</p><p class="mt-20 pt-5">';
        if (v == 1) {
            A += '<a class="btn btn-flat-18-green" log="type:2033,fr:qb,pos:seek-help,ac:click" href="/new?opensiteid=' + t + "&opencid=" + I + '" target="_blank"><span>咨询官方客服</span><s class="btn-point-lt"></s><s class="btn-point-rt"></s><s class="btn-point-bl"></s><s class="btn-point-br"></s></a>'
        } else {
            A += '<a class="btn btn-22-white fixed-ask fixed-ask-open f-green" href="/new?opensiteid=' + t + "&opencid=" + I + '" target="_blank"><em><b>求助客服</b></em></a>'
        }
        A += '</p></div></div><div class="card-info pt-5">';
        if (H == 1) {
            A += '<p class="f-gray">热门推荐：</p><ul>';
            if ((typeof(B) != "undefined") && B.length > 0) {
                var J = (B.length > 3) ? 3 : B.length;
                for (var C = 0; C < J; C++) {
                    A += '<li><a class="open-log-a" href="' + B[C][1] + '" target="_blank">' + B[C][0] + "</a></li>"
                }
            } else {
                A += "<span>还没有热门推荐</span>"
            }
            A += "</ul>"
        } else {
            if (H == 2) {
                A += '<p class="f-gray">' + o + '<a href="' + D + '" target="_blank">' + D + "</a></p>"
            }
        }
        A += "</p></div></div>";
        if (w) {
            A += '<div class="grid open-img"><a class="open-log-a" href="' + u + '" target="_blank"><img src="' + w + '" /></a></div>'
        }
        A += "</div></div>";
        return A
    }
    function g(r) {
        var q = r.attr("openSiteRank"),
        p = r.attr("openTotAns"),
        o = r.attr("openTotSati");
        var n = ['<div class="card-shadow">', '<div class="open-level-card">', '<p class="line open-rank f-yahei">位于全部平台<span class="open-rank-num">第' + q + "位</span></p>", '<p class="line open-answers f-info">', '<i class="i-open-answer-total"></i>', '<span class="mr-20">已回答问题：' + p + "</span>", '<i class="i-open-answer-best"></i>', "<span>采纳答案：" + o + "</span>", "</p>", "</div>", "</div>"];
        return n.join("")
    }
    e = function(p) {
        var s = this;
        var r = d.isString(p.target) ? d("#" + p.target) : d(p.target);
        var t = r.parents(".wgt-ask"),
        q = r.parents(".answer"),
        n = {};
        if (t.length) {
            n = F.context("page")
        } else {
            if (q.length) {
                var u = q.prop("id").split("-")[1];
                n = F.context("answers")[u]
            }
        }
        if (p.type != "openLevel" && !n.userName) {
            return false
        }
        var v = d.extend({
            skin: "ik-tip-card",
            direction: "down",
            width: n.user.openCardSrc ? 628 : 350,
            closebox: false,
            arrow: false,
            radius: false,
            target: p.target
        });
        switch (p.type) {
        case "open":
            v.content = l(n);
            v.skin += " ik-tip-card-open";
            v.onshow = function() {
                h({
                    tp: 201,
                    rf: document.referrer,
                    si: n.user.openSiteId
                });
                d("#user-card-" + n.imId + " a.open-log-a").one("click",
                function(w) {
                    h({
                        tp: 202,
                        rf: document.referrer,
                        si: n.user.openSiteId
                    })
                })
            };
            break;
        case "openLevel":
            v.width = 350;
            v.skin += " ik-tip-card-openlevel";
            v.content = g(r);
            break;
        case "expert":
            v.content = a(n);
            v.onshow = function() {
                f(n)
            };
            break;
        case "normal":
            v.content = m(n);
            v.onshow = function() {
                if (n.user.isAuth == "1") {
                    b(n, this)
                }
                f(n)
            };
            break
        }
        var o = 0;
        r.mouseover(function() {
            clearTimeout(o);
            if (!s.tip) {
                s.tip = new k(v);
                s.tip.on("show",
                function() {
                    d(this.getTipContainer()).mouseover(function() {
                        clearTimeout(o)
                    }).mouseout(function() {
                        r.mouseout()
                    });
                    i.on("qbcard.close",
                    function() {
                        s.tip.hide()
                    })
                })
            }
            o = setTimeout(function() {
                i.fire("qbcard.close");
                s.tip.show()
            },
            500)
        }).mouseout(function() {
            clearTimeout(o);
            if (s.tip && s.tip.getStatus() == "show") {
                o = setTimeout(function() {
                    s.tip.hide()
                },
                500)
            }
        })
    };
    return e
},
["/static/common/lib/tangram/base/base.js", "/static/common/ui/tip/tip.js", "/static/common/ui/event/event.js", "/static/common/ui/hi/hi.js"]);
F.module("/static/question/ui/comment/comment.js",
function(d, g) {
    var e = d("/static/common/lib/tangram/base/base.js");
    var k = d("/static/common/ui/event/event.js");
    var m = d("/static/common/ui/login/login.js");
    var c = d("/static/question/ui/evaluate/evaluate.js");
    var a = d("/static/common/ui/authcode/authcode.js");
    var n = d("/static/common/ui/submit/submit.js");
    var l = d("/static/common/ui/dialog/dialog.js");
    var j = d("/static/question/ui/editor/comment/comment.js");
    var f = d("/static/common/ui/log/log.js");
    function h(q, r) {
        var s = r._getElement("body").empty(),
        o = F.context("answers")[r.replyId];
        if (q.total_count > 0) {
            r.target.html("评论(" + q.total_count + ")");
            r.container.removeClass("no-comment")
        } else {
            r.target.html("评论");
            r.container.addClass("no-comment");
            return
        }
        if (q.data && q.data.length > 0) {
            r.curPageData = {
                firstReplyId: parseInt(q.data[0].reply_id, 10),
                lastReplyId: parseInt(q.data[q.data.length - 1].reply_id, 10),
                currentPn: r.pn,
                total: q.total_count,
                count: q.response_count
            };
            if (r.pn == 0) {
                r.firstPageData = e.object.clone(r.curPageData)
            }
        } else {
            return
        }
        e.forEach(q.data,
        function(G, B) {
            var u = e("<div/>").addClass("comment-entry f-12");
            var C = e.string((G.title.indexOf("#") > 0 ? "": G.title) + G.content).decodeHTML().replace(/</g, "&lt;").replace(/>/g, "&gt;").replace(/\"/g, "&quot;").replace(/\'/g, "&#39;");
            var A, v, x = !!o.user && !!o.user.openSiteId && o.user.openSiteId == G.reserved3;
            if (G.user_name.indexOf("#") > 1) {
                v = A = "热心网友"
            } else {
                if (x) {
                    v = e.string(o.user.openSiteName).encodeHTML();
                    A = '<a class="f-light" href="' + o.user.openSiteUrl + '" target="_blank">' + v + "</a>"
                } else {
                    A = ['<a class="f-light" href="http://www.baidu.com/p/' + G.user_name + '?from=zhidao" target="_blank">', e.string(G.user_name).encodeHTML(), "</a>"].join("");
                    v = G.user_name
                }
            }
            u.html(['<div class="details f-aid">', A, '<span class="ml-10">', e.date.format(new Date(G.create_time * 1000), "yyyy-M-d HH:mm"), "</span>", "</div>", '<div class="comment-content">', C, '<a class="reply-comment ml-5 f-light" href="#">回复</a>', "</div>"].join(""));
            s.append(u);
            if (B == 0) {
                u.addClass("first")
            }
            if (B == q.data.length - 1) {
                u.addClass("last")
            }
            var E = (F.context("user")["name"] == G.user_name) ? 1 : 0;
            var t = (o.isCurrentUser == "1") ? 1 : 0;
            var D = F.context("user")["isAdmin"];
            var z = (F.context("user")["isAdmin"] == 1) && ((F.context("user")["adminLevel"] == 10010) || (F.context("user")["adminLevel"] == 10011) || (F.context("user")["adminLevel"] == 10012));
            if (E || t || D) {
                var w = e('<div class="comment-admin grid-r"/>').prependTo(u);
                var y = e('<a href="#" class="comment-delete i-del" title="删除这条评论"/>').click(function(H) {
                    H.preventDefault();
                    r.remove(G.reply_id)
                }).appendTo(w).hide();
                if (z) {
                    e('<a href="#" class="mr-5"/>').html("封禁用户").click(function(H) {
                        H.preventDefault();
                        window.open("/misc/usermanager?un=" + e.url.escapeSymbol(G.user_name) + "&ie=gbk")
                    }).prependTo(w)
                }
                if (D) {
                    y.show()
                } else {
                    u.mouseover(function() {
                        y.show()
                    }).mouseout(function() {
                        y.hide()
                    })
                }
            }
            u.find(".reply-comment").click(function(J) {
                J.preventDefault();
                r.editor.setContent("回复 " + v + "： ");
                r.replyToUser = G.user_name;
                r.replyToId = G.reply_id;
                r.replyTosUser = x ? v: "";
                var H = r.editor.getElement("textarea"),
                K = H.value.length - 1;
                if (H.setSelectionRange) {
                    H.setSelectionRange(K, K)
                } else {
                    if (H.createTextRange) {
                        var I = H.createTextRange();
                        I.move("character", K);
                        I.select()
                    }
                }
                e(H).change();
                H.focus();
                var K = r.container.offset();
                if (e.page.getScrollTop() > K.top) {
                    window.scroll(0, K.top - 30)
                }
            })
        });
        if (q.total_count > r.rn) {
            var p = e("<p/>").addClass("comment-pager pager h-center pt-5 pb-15").attr("id", r.guid + "page");
            p.appendTo(s);
            b(r)
        }
    }
    function b(v) {
        var p = v._getElement("page").empty();
        var w = 4,
        z = 5,
        A = 10,
        x = v.pn,
        B = v.rn,
        y = v.curPageData.total;
        if (y <= B) {
            return ""
        }
        var u = Math.floor(x / B),
        t = Math.ceil(y / B),
        o = 0,
        r = t;
        function q(G, D, E) {
            var C = '<a href="#"/>';
            e(C).html(G).addClass(E).click(function(H) {
                H.preventDefault();
                v.getPageData(D)
            }).appendTo(p)
        }
        if (t > A) {
            if (u <= w) {
                o = 0;
                r = A
            } else {
                if (u + z >= t) {
                    o = t - A;
                    r = t
                } else {
                    o = u - w;
                    r = o + A
                }
            }
            if (u > w) {
                q("首页", 0, "pager-first")
            }
        }
        if (o != u) {
            q("<上一页", x - B, "pager-pre")
        }
        for (var s = o; s < r; s++) {
            if (s == u) {
                e("<b/>").addClass("mr-5").html(s + 1).appendTo(p)
            } else {
                q(s + 1, s * B)
            }
        }
        if (u < t - 1) {
            q("下一页>", x + B, "pager-next")
        }
        if ((t > A) && (u + z + 1) < t) {
            q("尾页", (t - 1) * B, "pager-last")
        }
        return p
    }
    var i = e.createClass(function(o) {
        var p = this;
        p.name = "comment-area";
        p.rn = 5;
        p.pn = 0;
        e.forEach(o,
        function(r, q) {
            e.isFunction(r) ? p.on(q, r) : p[q] = r
        });
        p.target = e.isString(p.target) ? e("#" + p.target) : e(p.target);
        p.replyId = p.target.attr("id").replace(/[^\d]/g, "");
        p.dispNum = F.context("answers")[p.replyId]["hasComment"] || 0;
        p.threadId = F.context("answers")[p.replyId]["threadId"] || 0
    }).extend({
        _getElement: function(o) {
            return e("#" + this.guid + (o || this.name))
        },
        getStatus: function() {
            return this.container.css("display") == "none" ? "hide": "show"
        },
        getElement: function(o) {
            return this._getElement(o).get(0)
        },
        init: function() {
            var p = this;
            p.target.click(function(r) {
                if (!p.container) {
                    q()
                }
                p.getStatus() == "hide" ? p.show() : p.hide();
                f.send({
                    type: 2014,
                    action: "comment",
                    page: "question"
                });
                r.preventDefault()
            }).mousemove(function() {
                e(this).addClass("comment-hover")
            }).mouseout(function() {
                e(this).removeClass("comment-hover")
            });
            function o(s, r, t) {
                return e("<" + s + "/>").attr("id", p.guid + r).addClass(t)
            }
            function q() {
                var s = ['<div class="comment-arrow"><em></em><span></span></div>'];
                if (e.browser.ie && e.browser.ie < 9) {
                    s.push('<b class="tl"></b><b class="tr"></b><b class="bl"></b><b class="br"></b>')
                }
                p.container = o("div", p.name, "comment-area").hide().append(s.join("")).append(o("div", "inner", "comment-area-inner"));
                var t = p.target.parents(".content");
                if (t.find(".forward-reply").size() == 1) {
                    t.find(".editor").after(p.container)
                } else {
                    if (t.find(".admin-panel").before(p.container).size() == 0) {
                        t.after(p.container)
                    }
                }
                p.container.find(".comment-arrow").css({
                    left: (p.target.offset().left - e(".qb-content").offset().left - 20) + "px"
                });
                if (p.dispNum == 0) {
                    p.container.addClass("no-comment")
                }
                var r = p._getElement("inner");
                p.editor = new j({
                    target: r,
                    defaultContent: "写下你的评论",
                    onsubmit: function() {
                        p.submit()
                    },
                    onfocus: function() {
                        p.authcode = p.authcode || new a({
                            container: p.getElement("bar"),
                            from: "new_comment",
                            className: "mt-5"
                        })
                    }
                });
                r.append(o("div", "bar", "comment-action-bar line"));
                o("div", "action", "comment-action grid-r mt-5 mb-10").append(o("a", "cancel", "comment-cancel f-aid").prop("href", "#").html("取消").click(function(u) {
                    p.hide();
                    u.preventDefault()
                }).attr("alog-action", "qb-comment-cancel")).append(o("a", "submit", "comment-submit ml-15 btn btn-24-green").prop({
                    href: "#",
                    title: "按 Ctrl+Enter 发布"
                }).html("<em><b>发布</b></em>").click(function(u) {
                    p.submit();
                    u.preventDefault()
                }).attr("alog-action", "qb-comment-submit")).appendTo(p._getElement("bar"));
                r.append(o("div", "body", "comment-body line"))
            }
        },
        show: function() {
            var o = this;
            k.fire("replyask.close", o.replyId);
            k.fire("adopt.close", o.replyId);
            k.on("comment.close",
            function(q, p) {
                if (o.replyId == p) {
                    o.hide()
                }
            });
            o.once("dataloaded",
            function() {
                o._getElement("loading").hide();
                e.fx.expand(o.getElement(), {
                    duration: 300,
                    onafterfinish: function() {
                        var q = o.container.css("height", "").offset().top;
                        var r = q + 100;
                        var p = q + 170;
                        if (e.browser.ie == 7) {
                            r += 30;
                            p += 30
                        }
                        if (e.page.getScrollTop() + e.page.getViewHeight() < r) {
                            window.scroll(0, p - e.page.getViewHeight())
                        }
                    }
                })
            });
            if (!o.curPageData) {
                if (!o.getElement("loading")) {
                    e("<div/>").prop({
                        className: "comment-loading",
                        id: o.guid + "loading"
                    }).html('<img src="http://img.baidu.com/img/iknow/ask/loading.gif" width="20" height="20" alt="loading..." />').insertBefore(o.container)
                }
                o.getPageData()
            } else {
                o.fire("dataloaded")
            }
        },
        getPageData: function(p) {
            var r = this;
            r.pn = p || 0;
            var o = {
                thread_id: parseInt(r.threadId, 10),
                reply_id: 0,
                type: 0,
                start: r.pn,
                count: r.rn,
                orderby_type: 1
            };
            if (r.pn == 0) {
                o.cur_reply_id = 0;
                o.pg = 0;
                o.direct = 3
            } else {
                var q = r.curPageData;
                o.pg = Math.abs(Math.floor((p - q.currentPn) / r.rn));
                if (r.pn >= (Math.ceil(q.total / r.rn) - 1) * r.rn) {
                    o.direct = 4;
                    o.cur_reply_id = q.lastReplyId
                } else {
                    if (r.pn > q.currentPn) {
                        o.direct = 1;
                        o.cur_reply_id = q.lastReplyId
                    } else {
                        o.direct = 2;
                        o.cur_reply_id = q.firstReplyId
                    }
                }
            }
            var s = e.url.jsonToQuery({
                pid: "iknow",
                tk: "iknow",
                service: "Comment",
                method: "get_reply",
                encoding: "gbk",
                data: e.json.stringify(o)
            });
            e.sio("http://comment.api.baidu.com/api?" + s).callByServer(function(t) {
                h(t, r);
                r.fire("dataloaded");
                r.fire("show")
            })
        },
        hide: function(o) {
            var p = this;
            e.fx.collapse(p.getElement(), {
                duration: 300
            })
        },
        submit: function() {
            var p = this,
            o = p.editor.getContent();
            commentLen = p.editor.countByte ? e.string(o).getByteLength() : o.length,
            restLen = p.editor.maxLength - commentLen;
            if (p.submiting) {
                return
            }
            if (o == p.editor.defaultContent) {
                l.alert('<div style="text-align:center;font-size:14px;padding-top:24px;"><img style="vertical-align:middle;margin-right:10px;padding-bottom: 3px;" src="http://img.baidu.com/img/iknow/feedback/icon-warning.png">您输入的评论内容为空</div>');
                return
            }
            if (restLen < 0) {
                return
            }
            var q = {
                qid: F.context("answers")[p.replyId]["qid"],
                aid: p.replyId,
                content: o,
                cun: p.replyToUser || "",
                cid: p.replyToId || ""
            }; !! p.replyTosUser && e.extend(q, {
                sun: p.replyTosUser
            });
            if (p.authcode) {
                p.authcode.submitParam(q)
            }
            p.submiting = true;
            k.fire("login.check", {
                isLogin: function() {
                    var r = new n({
                        url: "/submit/comment/reply/?encoding=gbk",
                        params: q,
                        hasJump: false,
                        autoRefresh: true,
                        beforeError: function() {
                            p.submiting = false
                        },
                        beforeJump: function(s) {
                            f.send({
                                type: 2014,
                                action: "comment-submit",
                                page: "qb-new"
                            });
                            p.submiting = false;
                            if (!s.content || s.content == "null") {
                                l.alert("可能含有不适当发表的内容哦，修改后再提交吧~");
                                return
                            }
                            p.editor.setContent("").change();
                            p.replyToUser = "";
                            p.replyToId = "";
                            p.replyTosUser = "";
                            p.once("dataloaded",
                            function() {
                                var t = p.container.find(".first").get(0);
                                e.fx.fadeIn(t, {
                                    onafterfinish: function() {
                                        if (t.style && t.style.zoom) {
                                            t.style.zoom = "1"
                                        }
                                    }
                                })
                            });
                            p.getPageData(0);
                            if (p.authcode) {
                                p.authcode.dispose();
                                p.authcode = null
                            }
                        },
                        authcode: p.authcode || null
                    })
                },
                noLogin: function() {
                    p.submiting = false;
                    k.fire("login.log", {
                        onLoginSuccess: function() {
                            var r = new n({
                                url: "/submit/comment/reply/?encoding=gbk",
                                params: q,
                                hasJump: false,
                                autoRefresh: true,
                                beforeError: function() {
                                    p.submiting = false
                                },
                                beforeJump: function() {
                                    f.send({
                                        type: 2014,
                                        action: "comment-submit",
                                        page: "qb-new"
                                    });
                                    p.submiting = true;
                                    var s = location.href;
                                    if (s.match("#")) {
                                        s = s.split("#")[0]
                                    }
                                    if (/[?|&]from=\w+/.test(location.search)) {
                                        s = s.split("?")[0]
                                    }
                                    s = s.match(/\?/) ? (s + "&from=commentSubmit") : (s + "?from=commentSubmit");
                                    setTimeout(function() {
                                        location.href = s + "#answers" + p.replyId
                                    },
                                    1500)
                                }
                            })
                        }
                    })
                }
            })
        },
        remove: function(o) {
            var q = this;
            var p = new l({
                type: "confirm",
                width: 360,
                height: 150,
                titleText: "知道提示",
                content: '<div style="text-align:center;font-size:14px;padding-top:24px;"><img style="vertical-align:middle;margin-right:10px;" src="http://img.baidu.com/img/iknow/feedback/icon-question.png" />确定要删除该评论吗？</div>',
                onaccept: function() {
                    var r = {
                        qid: F.context("answers")[q.replyId]["qid"],
                        aid: q.replyId,
                        cid: o
                    };
                    k.fire("login.check", {
                        isLogin: function() {
                            var s = new n({
                                url: "/submit/comment/drop/",
                                params: r,
                                hasJump: false,
                                autoRefresh: true,
                                beforeJump: function() {
                                    k.fire("dialog.close");
                                    var t = q.pn;
                                    if (q.curPageData.count <= 1) {
                                        t = t && (t - q.rn)
                                    }
                                    q.curPageData = e.object.clone(q.firstPageData);
                                    q.getPageData(t < 0 ? 0 : t)
                                }
                            })
                        }
                    })
                }
            })
        }
    });
    g = i;
    g.getCount = function() {
        var o = [],
        r = {};
        e(".comment").each(function(s, t) {
            var u = t.id.replace(/[^\d]/g, "");
            var w = F.context("answers")[u];
            var v = w.threadId;
            r[v] = parseInt(u, 10);
            if (parseInt(w.hasComment, 10) == 1) {
                o.push({
                    thread_id: parseInt(v, 10),
                    reply_id: 0,
                    query_mask: 999
                })
            }
        });
        if (o.length) {
            var q = e.url.jsonToQuery({
                pid: "iknow",
                tk: "iknow",
                service: "Comment",
                method: "get_reply_count_batch",
                query_mask: "999",
                data: e.json.stringify(o)
            });
            e.sio("http://comment.api.baidu.com/api?" + q).callByServer(function(u) {
                if (u && u.res) {
                    for (var t = 0; t < u.res.length; t++) {
                        var s = e("#comment-" + r[u.res[t].thread_id]);
                        if (u.res[t].total_count > 0 && s.size()) {
                            s.html("评论(" + u.res[t].total_count + ")")
                        }
                    }
                }
                p()
            })
        }
        function p() {
            if (location.hash) {
                var s = location.hash.replace(/[^\d]/g, "");
                if (location.search.indexOf("from=comment") != -1) {
                    e("#comment-" + s).click()
                }
            }
        }
    };
    return g
},
["/static/common/lib/tangram/base/base.js", "/static/common/ui/event/event.js", "/static/common/ui/login/login.js", "/static/question/ui/evaluate/evaluate.js", "/static/common/ui/authcode/authcode.js", "/static/common/ui/submit/submit.js", "/static/common/ui/dialog/dialog.js", "/static/question/ui/editor/comment/comment.js", "/static/common/ui/log/log.js"]);
F.module("/static/question/ui/editor/config/config.js",
function(b, e) {
    var d = b("/static/common/lib/tangram/base/base.js");
    var n = b("/static/common/ui/uri/uri.js");
    var c = F.context("user").isLogin == "1";
    var k = F.context("page").isAdopted == "1" ? true: false;
    var m = location.search.match(/newUserGuide=[123]/ig);
    var g = m ? true: false;
    var f = F.context("page")["supply"];
    var j = parseInt(F.context("page")["ownerUid"], 10) > 0;
    var l = F.context("user").replyBold == "1";
    var o = F.context("user").replyRed == "1";
    var h = [["bold", "|", "italic", "|", "insertunorderedlist", "|", "insertorderedlist", "|", "autotypeset", "|", "insertimage", "|", "attachment", "|", "insertmap"]];
    if (F.context("page").cidTop == 74) {
        h = [["bold", "|", "italic", "|", "insertunorderedlist", "|", "insertorderedlist", "|", "autotypeset", "|", "insertimage", "|", "attachment", "|", "insertmap", "|", "insertcode"]]
    }
    if (j) {
        if (F.context("page").cidTop == 74) {
            h = [["insertunorderedlist", "|", "insertorderedlist", "|", "autotypeset", "|", "insertimage", "|", "insertcode"]]
        } else {
            h = [["insertunorderedlist", "|", "insertorderedlist", "|", "autotypeset", "|", "insertimage"]]
        }
    }
    var a = ["登录就能传图片，图文解答更文艺", "登录就能用符号，重要内容好强调", "登录就能用编号，段落层次更清晰", "登录就能自排版，凌乱布局变整洁", "登录就能插地图，地理位置好示意", "搭配图片来解答, 瞬间凸显文艺范儿", "使用符号来强调，重要内容立体现", "使用编号标段落，层次突出条理清", "智能排版一键按，凌乱布局变整洁", "插入地图好示意，地理位置轻松找", "您今日上传的图片数目已经超过限制！", "上传网盘共分享，传递知识助大家", "登录就能传附件，分享知识助大家", "回答加粗，别出心裁更突出", "5级以上且有5个优质答案的用户，可以使用加粗特权哦~", "选择加红，让答案与众不同", "5级以上有10个优质答案的用户，可以使用加红特权哦~"];
    if (F.context("user").isLogin == 1 && F.context("user").gradeIndex < 5) {
        a[14] = "快升到5级，再有" + (5 - (F.context("user").highQualityNum || 0)) + "个优质答案就可以回答加粗了哟！";
        a[16] = "快升到5级，再有" + (10 - (F.context("user").highQualityNum || 0)) + "个优质答案就可以回答加红了哟！"
    } else {
        if (F.context("user").isLogin == 1) {
            a[14] = "还差" + (5 - (F.context("user").highQualityNum || 0)) + "个优质答案就可以回答加粗了哟！";
            a[16] = "还差" + (10 - (F.context("user").highQualityNum || 0)) + "个优质答案就可以回答加红了哟！"
        }
    }
    var i = {
        txttip: ["该提问求助发自手机，请精简回答，方便查看", "您的回答会被数十乃至数万的网友学习和参考，所以请一定对自己的回答负责，尽可能保障您的回答准确、详细和有效", "提问者正在等待您的回答", "您的回答会被数十乃至数万的网友学习和参考，所以请一定对自己的回答负责，尽可能保障您的回答准确、详细和有效", "详细的问题说明，有助于回答者给出准确的答案", "回答积累经验值，升级即可获得抽奖机会"],
        refertip: ["如果您的回答是从其他地方引用，请表明出处", "您提交的参考资料超过50字，请删除"],
        modify: false,
        refer: "",
        isrefer: false,
        curEditor: null,
        hostname: "http://zhidao.baidu.com",
        errorClew: ["请您输入文字内容"],
        logNum: "2038"
    };
    e = {
        ikEditorHoverTitle: a,
        optionList: i,
        wangpanLoaderJs: "http://pan.baidu.com/res/static/js/buss/widget_loader.js",
        buttonConfig: {
            insertimage: {
                title: "图片",
                hoverTitle: c ? a[5] : a[0],
                overflowMsg: a[10]
            },
            insertunorderedlist: {
                title: "符号",
                hoverTitle: c ? a[6] : a[1]
            },
            insertorderedlist: {
                title: "编号",
                hoverTitle: c ? a[7] : a[2]
            },
            autotypeset: {
                title: "排版",
                hoverTitle: c ? a[8] : a[3]
            },
            insertmap: {
                title: "地图",
                unTitle: "删除地图",
                hoverTitle: c ? a[9] : a[4],
                url: n.map
            },
            attachment: {
                list: {
                    uploadfile: "从本地上传",
                    wangpan: "从网盘添加"
                },
                title: "附件",
                hoverTitle: c ? "": a[12]
            },
            insertcode: {
                title: "代码",
                hoverTitle: ""
            },
            bold: {
                title: "加粗",
                hoverTitle: l ? a[13] : a[14]
            },
            italic: {
                title: "飘红",
                hoverTitle: o ? a[15] : a[16]
            }
        },
        editorStyles: {
            answer: {
                toolbars: h,
                hasBoldPrivilege: l,
                hasRedPrivilege: o,
                maximumWords: 9999,
                initialContent: !g ? c ? k ? i.txttip[3] : i.txttip[1] : i.txttip[2] : i.txttip[5],
                isLogin: c,
                addons: {
                    authcode: "new_reply",
                    submitBtn: "提交回答",
                    anonymouse: true
                }
            },
            modifyanswer: {
                toolbars: h,
                hasBoldPrivilege: l,
                hasRedPrivilege: o,
                maximumWords: 9999,
                initialContent: "",
                title: "完善我的回答：",
                addons: {
                    authcode: "new_reply",
                    submitBtn: "提交修改"
                }
            },
            pumpanswer: {
                toolbars: h,
                hasBoldPrivilege: l,
                hasRedPrivilege: o,
                maximumWords: 999,
                initialContent: "继续回答提问者的追问，即可获得2经验值和2财富值奖励",
                title: "继续回答：",
                addons: {
                    submitBtn: "提交回答",
                    authcode: "add_reply"
                }
            },
            appendask: {
                maximumWords: 199,
                initialContent: "",
                title: "继续追问：",
                addons: {
                    submitBtn: "提交追问",
                    authcode: "add_ask"
                }
            },
            modifyask: {
                maximumWords: 199,
                initialContent: "",
                title: "修改追问：",
                addons: {
                    submitBtn: "提交修改",
                    authcode: "add_ask"
                }
            },
            moreanswer: {
                toolbars: [["insertimage"]],
                maximumWords: 499,
                initialContent: f ? "": i.txttip[4],
                addons: {
                    submitBtn: "确定",
                    authcode: "new_post"
                }
            }
        },
        imgErrorNum: {
            0 : "图片提交成功",
            1 : '<p class="ik-neweditor-clew">图片提交失败！</p>',
            2 : '<p class="ik-neweditor-clew">图片今日上传张数超限！</p>',
            3 : '<p class="ik-neweditor-clew">图片文件过大！</p>',
            4 : ' <p class="ik-neweditor-clew">图片类型错误！</p><p class="ik-neweditor-clewmore">注：大小不超过5M，支持JPG/PNG/BMP/GIF等格式</p>',
            265 : '<p class="ik-neweditor-clew">网络异常，请您登录或注册后提交回答！</p>'
        },
        fileErrorNum: {
            0 : "请等待附件上传完成",
            1 : "附件上传失败，请重试或者删除"
        }
    };
    return e
},
["/static/common/lib/tangram/base/base.js", "/static/common/ui/uri/uri.js"]);
F.module("/static/question/ui/editor/editor.js",
function(b, d) {
    var c = b("/static/common/lib/tangram/base/base.js");
    var k = b("/static/common/ui/editor/editor.js");
    var h = b("/static/common/ui/editor/prototype/prototype.js");
    var i = b("/static/common/ui/editor/addon/addon.js");
    var a = b("/static/question/ui/editor/config/config.js");
    var j = b("/static/common/ui/tip/tip.js");
    var g = b("/static/common/ui/dialog/dialog.js");
    var e = b("/static/common/ui/event/event.js");
    k.config.buttonConfig = a.buttonConfig;
    k.config.wangpanConfJs = a.wangpanConfJs;
    k.config.wangpanLoaderJs = a.wangpanLoaderJs;
    var f = c.lang.createClass(function(l) {
        var o = c("#" + l.id);
        if (!o) {
            return false
        }
        var m = this;
        m.type = l.type;
        m.style = a.editorStyles[m.type];
        if (l.config) {
            c.object.merge(m.style, l.config, {
                overwrite: 1,
                recursive: 1
            })
        }
        if (m.style.title) {
            c("<div/>").addClass("editor-title f-14 f-bold").html(m.style.title).appendTo(o)
        }
        var n = new k(m.style);
        n.render(o.get(0));
        m.instance = n;
        m.container = o.get(0);
        m.config = a;
        i.init(m);
        n.container.style.width = "";
        n.ui.getDom("iframeholder").style.width = "";
        m.afterInit();
        if (l.content) {
            m.setContent(l.content)
        }
    });
    f.extend(h);
    f.extend({
        editorSubmit: function() {
            var m = this;
            m.config.optionList.modify = false;
            var l = {
                co: m.uploadFile(m.filterHighlight(m.filterMapClew(m.instance.getContent()))),
                cite: "",
                rich: 1
            };
            if (m.authcode) {
                m.authcode.submitParam(l)
            }
            if (m.anonymouse && m.anonymouse.prop("checked")) {
                l.anoy = 1
            }
            return l
        }
    });
    d = f;
    return d
},
["/static/common/lib/tangram/base/base.js", "/static/common/ui/editor/editor.js", "/static/common/ui/editor/prototype/prototype.js", "/static/common/ui/editor/addon/addon.js", "/static/question/ui/editor/config/config.js", "/static/common/ui/tip/tip.js", "/static/common/ui/dialog/dialog.js", "/static/common/ui/event/event.js"]);
F.module("/static/question/ui/editor/comment/comment.js",
function(e, b) {
    var d = e("/static/common/lib/tangram/base/base.js");
    var c = e("/static/common/ui/event/event.js");
    var a = d.createClass(function(f) {
        var g = this;
        g.maxLength = 200;
        g.countByte = false;
        g.className = "";
        g.name = "comment-editor";
        g.defaultContent = "";
        d.forEach(f,
        function(i, h) {
            d.isFunction(i) ? g.on(h, i) : g[h] = i
        });
        g.target = d.isString(g.target) ? d("#" + g.target) : d(g.target);
        g.container = d("<div/>").attr("id", g.guid + g.name).addClass(g.name).addClass(g.className).appendTo(g.target);
        d("<textarea/>").attr("id", g.guid + "textarea").appendTo(g.container).val(g.defaultContent);
        d("<p/>").attr("id", g.guid + "limit").addClass("comment-editor-limit").hide().appendTo(g.container).html('<span class="comment-editor-limit-num">' + g.maxLength + "</span>/" + g.maxLength);
        g._getElement("textarea").on("change keyup",
        function(h) {
            g.fire("change", this)
        }).keydown(function(h) {
            if (h.ctrlKey && h.keyCode == 13) {
                g.fire("submit");
                this.blur()
            }
        }).focus(function() {
            if (g.getContent() == g.defaultContent) {
                g.setContent("")
            }
            g.container.css({
                borderColor: "#50b30e"
            });
            g._getElement("textarea").css("color", "#333");
            g.fire("focus")
        }).blur(function() {
            g.container.css("borderColor", "#c7c7c7");
            if (g.getContent() == "") {
                g.setContent(g.defaultContent);
                g._getElement("textarea").css("color", "#ccc")
            }
            g.fire("blur")
        });
        g.on("change",
        function(o, n) {
            var l = g.getContent(),
            m = g.countByte ? d.string(l).getByteLength() : l.length,
            i = g.maxLength - m,
            k = g._getElement("limit"),
            j = g._getElement("limit").find(".comment-editor-limit-num");
            if (i < 0) {
                g._getElementSubmitBtn().addClass("btn-24-disabled").removeClass("btn-24-green").attr("title", "");
                j.addClass("comment-editor-alert")
            } else {
                g._getElementSubmitBtn().addClass("btn-24-green").removeClass("btn-24-disabled").attr("title", "按 Ctrl+Enter 发布");
                j.removeClass("comment-editor-alert")
            }
            k.hide();
            j.html(i).hide();
            var h = d(n).removeClass("longer").css("width", "").css("line-height");
            if (n.scrollHeight > 1.5 * (parseFloat(h) || 24)) {
                d(n).addClass("longer");
                c.fire("expand");
                j.show();
                k.show();
                if (d.browser.isGecko) {
                    d(n).css({
                        width: g.width || 592,
                        "overflow-y": "scroll"
                    })
                }
            } else {
                if (d.browser.isGecko) {
                    d(n).css("overflow-y", "")
                }
                c.fire("shrink")
            }
        })
    }).extend({
        _getElement: function(f) {
            return ! f ? this.container: this.container.find("#" + this.guid + f)
        },
        _getElementSubmitBtn: function() {
            return this.container.next().find(".comment-submit")
        },
        getElement: function(f) {
            return this._getElement(f).get(0)
        },
        getContent: function() {
            return d.string(this._getElement("textarea").val()).trim()
        },
        setContent: function(f) {
            return this._getElement("textarea").val(f)
        }
    });
    b = a;
    return b
},
["/static/common/lib/tangram/base/base.js", "/static/common/ui/event/event.js"]);
F.module("/static/question/ui/evaluate/evaluate.js",
function(b, e) {
    var c = b("/static/common/lib/tangram/base/base.js"),
    f = b("/static/common/ui/event/event.js"),
    l = b("/static/common/ui/submit/submit.js"),
    i = b("/static/common/ui/login/login.js"),
    d = b("/static/common/ui/log/log.js"),
    g = b("/static/question/ui/editor/comment/comment.js"),
    h = b("/static/common/ui/dialog/dialog.js"),
    j = b("/static/common/ui/store/store.js"),
    k = b("/static/common/ui/tip/tip.js");
    b("/static/common/ui/tip/move/move.js");
    var a = c.createClass(function(n) {
        var o = this;
        var m = [];
        o.isLogin = F.context("user").isLogin;
        c.forEach(n,
        function(q, p) {
            c.isFunction(q) ? o.on(p, q) : o[p] = q
        });
        o.target = c.isString(o.target) ? c("#" + o.target) : c(o.target);
        o.badTarget = o.target.next();
        o.replyId = o.target.attr("id").replace(/[^\d]/g, "");
        o.qid = F.context("answers")[o.replyId]["qid"];
        o.goodNum = null;
        o.badNum = null;
        o.currentData = [o.qid, o.replyId].join("|")
    }).extend({
        _getElement: function(m) {
            return m ? this.target.find("#" + this.guid + "-" + m) : this.target
        },
        _getBadElement: function(m) {
            return m ? this.badTarget.find("#" + this.guid + "-bad-" + m) : this.badTarget
        },
        getEvaluteData: function() {
            var m = c.cookie.get("BAIDUID") ? c.cookie.get("BAIDUID").split(":")[0] : 0;
            if (!j.get("evaluate" + m)) {
                return false
            }
            return j.get("evaluate" + m)
        },
        hasEvaluted: function() {
            if (!this.getEvaluteData()) {
                return false
            } else {
                return c.array(this.getEvaluteData().split(",")).contains(this.currentData)
            }
        },
        init: function() {
            var n = this;
            var m = ['<span class="evaluate-outer" id="#{guid}-outer">', '<span class="evaluate-inner" id="#{guid}-inner">', '<b class="evaluate-tip" style="display:none" id="#{guid}-tip"></b>', '<b class="evaluate-num" id="#{guid}-num"></b>', "</span>", "</span>"].join("");
            n.dispNum = n.target.data("evaluate");
            n.dispBadNum = n.badTarget.data("evaluate");
            if (n.hasEvaluted()) {
                n.target.addClass("evaluated");
                n.badTarget.addClass("evaluated")
            }
            n.isEvaluated = n.target.hasClass("evaluated") || n.hasEvaluted();
            n.target.html(c.string(m).format({
                guid: n.guid
            }));
            n._getElement("tip").text(n.isEvaluated ? "给力": "给力");
            n._getElement("num").text(n.dispNum);
            n._getElement("num").addClass("evaluate-num-fixed");
            n.badTarget.html(c.string(m).format({
                guid: n.guid + "-bad"
            }));
            n._getBadElement("tip").text(n.isEvaluated ? "不给力": "不给力");
            n._getBadElement("num").text(n.dispBadNum);
            n._getBadElement("num").addClass("evaluate-num-fixed");
            this.bind();
            this.type === 0 && this.renderComment()
        },
        bind: function() {
            var m = this;
            m.target.mouseenter(function() {
                if (m.isEvaluated) {
                    c(this).addClass("evaluated-hover")
                }
                m._getElement("tip").show();
                m._getElement("num").hide()
            }).mouseleave(function() {
                if (m.isEvaluated) {
                    c(this).removeClass("evaluated-hover")
                }
                m._getElement("tip").hide();
                m._getElement("num").show()
            }).click(function(n) {
                n.preventDefault();
                if (c(this).hasClass("evaluate-mine") || m.isEvaluated) {
                    return
                }
                if (!m.isEvaluated) {
                    if (m.hasEvaluted()) {
                        m._getElement("tip").text("给力");
                        return
                    }
                    m.submit()
                }
                d.send({
                    type: 2014,
                    action: "evaluate",
                    page: "question"
                })
            });
            m.on("commentsubmit",
            function() {
                var n = new k({
                    skin: "ik-tip-white",
                    content: '<i class="i-tick mr-5"></i><span class="f-green">回答者将收到赞同</span><p class="f-aid ml-20">赞同记录已保存</p>',
                    target: m.target,
                    direction: "up",
                    effect: "move",
                    width: 160,
                    autoDispose: true
                });
                n.show();
                setTimeout(function() {
                    n.hide();
                    if (m.isLogin != "1") {
                        location.reload(true)
                    }
                },
                3000)
            });
            m.badTarget.mouseenter(function() {
                if (m.isEvaluated) {
                    c(this).addClass("evaluated-hover")
                }
                m._getBadElement("tip").show();
                m._getBadElement("num").hide()
            }).mouseleave(function() {
                if (m.isEvaluated) {
                    c(this).removeClass("evaluated-hover")
                }
                m._getBadElement("tip").hide();
                m._getBadElement("num").show()
            }).click(function(n) {
                n.preventDefault();
                if (c(this).hasClass("evaluate-mine") || m.isEvaluated) {
                    return
                }
                if (!m.isEvaluated) {
                    if (m.hasEvaluted()) {
                        m._getBadElement("tip").text("不给力");
                        return
                    }
                    m.submitBad()
                }
            })
        },
        submit: function() {
            var m = this;
            new l({
                params: {
                    cm: 100669,
                    qid: F.context("answers")[m.replyId]["qid"],
                    aid: m.replyId,
                    type: 1
                },
                hasJump: false,
                autoRefresh: true,
                beforeJump: function(q) {
                    m.isEvaluated = true;
                    m.target.addClass("evaluated").mouseout();
                    m.badTarget.addClass("evaluated").mouseout();
                    m.numScroll();
                    var n = c.cookie.get("BAIDUID") ? c.cookie.get("BAIDUID").split(":")[0] : 0;
                    var p = !m.getEvaluteData() ? m.currentData: [m.getEvaluteData(), m.currentData].join(",");
                    j.set("evaluate" + n, p);
                    if (m.isLogin == "1") {
                        var o = ['<div class="tip-comment-box line mt-10 mb-10">', '<div class="tip-comment-editor grid"></div>', '<a class="btn btn-24-white grid-r" title="按 Ctrl+Enter 发布"><em><b>发布</b></em></a>', '<p class="comment-alert" style="display:none;"></p>', "</div>"].join("");
                        m.showTip({
                            container: o,
                            defaultType: "button"
                        })
                    }
                    if (m.dispNum > 9999) {
                        m._getElement("num").removeClass("evaluate-num-fixed")
                    }
                    m._getElement("tip").text("给力")
                }
            })
        },
        submitBad: function() {
            var m = this;
            new l({
                params: {
                    cm: 100680,
                    qid: F.context("answers")[m.replyId]["qid"],
                    aid: m.replyId,
                    type: 2
                },
                hasJump: false,
                autoRefresh: true,
                beforeJump: function(p) {
                    m.isEvaluated = true;
                    m.badTarget.addClass("evaluated").mouseout();
                    m.target.addClass("evaluated").mouseout();
                    m.numScroll(m.badTarget);
                    var n = c.cookie.get("BAIDUID") ? c.cookie.get("BAIDUID").split(":")[0] : 0;
                    var o = !m.getEvaluteData() ? m.currentData: [m.getEvaluteData(), m.currentData].join(",");
                    j.set("evaluate" + n, o);
                    if (m.dispBadNum > 9999) {
                        m._getBadElement("num").removeClass("evaluate-num-fixed")
                    }
                    m._getBadElement("tip").text("不给力")
                }
            })
        },
        numScroll: function(q) {
            var o = this,
            p = "";
            if (q == o.badTarget) {
                q = o.badTarget.find(".evaluate-num").eq(0);
                o.dispBadNum = parseInt(q.text(), 10) + 1;
                q.html(o.dispBadNum);
                p = q.clone().css({
                    position: "absolute",
                    right: 0,
                    top: 0
                }).html(o.dispBadNum)
            } else {
                if (q) {
                    q = o.target.find(q).eq(0)
                } else {
                    q = o.target.find(".evaluate-num").eq(0)
                }
                o.dispNum = parseInt(q.text(), 10) + 1;
                q.html(o.dispNum);
                p = q.clone().css({
                    position: "absolute",
                    right: 0,
                    top: 0
                }).html(o.dispNum)
            }
            q.parent().css("position", "relative").append(p);
            var n = 1;
            var m = setInterval(function() {
                p.css("top", "-" + n + "px");
                n++;
                if (n == 22) {
                    clearInterval(m);
                    p.remove();
                    o.fire("numscroll")
                }
            },
            16)
        },
        _getTipText: function() {
            var m = ["谢谢楼主的回答(=^ ^=)", "答得太好了，怒赞^ω^", "赞同楼主，是正解", "英雄所见略同啊！", "围观大神级回答！", "o(≧ v ≦)o~~答得好棒"];
            return m
        },
        showTip: function(o) {
            var p = this;
            var n = c.object.extend({
                skin: "evaluate-tip",
                header: '<p class="f-aid">选个赞美的话儿告诉他吧~</p>',
                footer: "",
                container: "",
                target: p.target,
                defaultType: "text"
            },
            o || {});
            var m = ['<div class="#{skin}">', '<div class="tip-header">#{header}</div>', "#{container}", '<ul class="line evaluate-text f-12" alog-group="qb-zan-quick"></ul>', "#{footer}", "</div>"].join("");
            p.header = n.header;
            if (!p.tip) {
                p.tip = new k({
                    skin: "ik-tip-white",
                    closebox: true,
                    direction: "down",
                    content: c.string(m).format(n),
                    target: n.target,
                    width: 294
                });
                p.tip.on("show",
                function() {
                    var r = c(this.getTipBody());
                    var q = p._getTipText();
                    var s = r.find("ul").empty();
                    r.find(".tip-header").html(p.header);
                    c(q).each(function(t, u) {
                        if (n.defaultType == "text") {
                            s.append('<li><a class="text' + t + '" href="#">' + u + "</a></li>")
                        } else {
                            if (n.defaultType == "button") {
                                if (t == 0) {
                                    s.append('<li class="first"><a class="text' + t + '" title="' + u + '" href="#"></a></li>')
                                } else {
                                    s.append('<li><a class="text' + t + '" title="' + u + '" href="#"></a></li>')
                                }
                            }
                        }
                    })
                });
                c(p.tip.getTipBody()).delegate("ul li a", "click",
                function(q) {
                    q.preventDefault();
                    if (n.defaultType == "text") {
                        p.submitComment(c(this).text())
                    } else {
                        if (n.defaultType == "button") {
                            c(".evaluate-text a", p.tip.getTipBody()).each(function(r, s) {
                                c(s).removeClass("text" + r + "-click")
                            });
                            c(this).addClass(c(this).attr("class") + "-click");
                            p.submitComment(c(this).attr("title"))
                        }
                    }
                    p.tip.hide()
                });
                c(document).click(function(q) {
                    if (!c(p.tip.getTipBody()).contains(q.target)) {
                        if (!c(n.target).contains(q.target)) {
                            p.tip.hide()
                        }
                    }
                });
                p.fire("tipload")
            }
            p.tip.show(n.target);
            return p.tip
        },
        submitComment: function(n) {
            var m = this;
            n = c.string(n).trim();
            if (n == "") {
                return
            }
            f.fire("login.check", {
                isLogin: function() {
                    var p = m.type === 0,
                    o = p ? "/submit/ajax": "/submit/comment/reply/?encoding=gbk",
                    q = c.extend({
                        qid: F.context("answers")[m.replyId]["qid"],
                        aid: m.replyId
                    },
                    p ? {
                        cm: "100677",
                        words: n
                    }: {
                        content: n,
                        cun: "",
                        cid: "",
                        which: m.nagetive || ""
                    });
                    new l({
                        url: o,
                        params: q,
                        syncId: "evaluateComment",
                        hasJump: false,
                        autoRefresh: true,
                        beforeJump: function() {
                            m.fire("commentsubmit", n)
                        }
                    })
                }
            })
        },
        renderComment: function() {
            var m = this;
            m.once("tipload",
            function() {
                var n = c(m.tip.getTipBody()),
                o = new g({
                    target: n.find(".tip-comment-editor").get(0),
                    maxLength: 15,
                    defaultContent: "",
                    width: 206
                });
                m.editor = o;
                o.on("focus",
                function() {
                    n.find(".comment-alert").eq(0).html("").hide()
                });
                o.on("submit",
                function() {
                    var p = this.getContent();
                    if (p == this.defaultContent || c.string.trim(p) === "") {
                        h.alert("您输入的评论内容为空");
                        return
                    }
                    m.submitComment(p)
                });
                n.find(".btn").eq(0).click(function() {
                    o.fire("submit")
                });
                m.once("commentsubmit",
                function(p) {
                    m.tip.hide()
                })
            })
        }
    });
    e = a;
    e.reflow = function() {
        c(".evaluate").hide().show()
    };
    return e
},
["/static/common/lib/tangram/base/base.js", "/static/common/ui/event/event.js", "/static/common/ui/submit/submit.js", "/static/common/ui/login/login.js", "/static/common/ui/log/log.js", "/static/question/ui/editor/comment/comment.js", "/static/common/ui/dialog/dialog.js", "/static/common/ui/store/store.js", "/static/common/ui/tip/tip.js", "/static/common/ui/tip/move/move.js"]);
F.module("/static/question/ui/evaluate/open/open.js",
function(b, d) {
    var c = b("/static/common/lib/tangram/base/base.js");
    b("/static/common/ui/baidu/baidu.js");
    var a = b("/static/question/ui/evaluate/evaluate.js");
    var j = b("/static/common/ui/tip/tip.js");
    var g = b("/static/common/ui/event/event.js");
    var h = b("/static/common/ui/dialog/dialog.js");
    var i = b("/static/common/ui/login/login.js");
    var f = b("/static/question/ui/editor/comment/comment.js");
    var e = c.createClass(function(k) {
        this.whichBtn = null
    },
    {
        superClass: a
    }).extend({
        init: function() {
            var k = this;
            var l = c.url.jsonToQuery({
                uid: F.context("user")["id"] || 0,
                qid: F.context("answers")[k.replyId]["qid"],
                rid: k.replyId,
                siteId: F.context("answers")[k.replyId]["user"]["openSiteId"]
            });
            c.get("/c/qb_rating/get?" + l,
            function(n, m, o) {
                if (n.errorNo == 0) {
                    k.initHtml(n);
                    k.bind();
                    k.isGoodValid = n.isGoodValid;
                    k.isBadValid = n.isBadValid
                }
            },
            "json")
        },
        initHtml: function(n) {
            var o = ['<span class="evaluate-outer" id="#{guid}-outer">', '<span class="evaluate-inner" id="#{guid}-inner">', "</span>", "</span>"].join(""),
            m = this;
            if (n.isEvaluate || m.target.hasClass("evaluate-mine")) {
                m.target.addClass("evaluated")
            }
            var k = ['<span class="evaluate-open-btn">', '<b class="evaluate-tip">#{tip}</b>', '<b class="evaluate-num">#{num}</b>', "</span>"].join("");
            k = c.string(k);
            var l = {
                very: c(k.format({
                    tip: "很满意",
                    num: n.rate.very
                })).addClass("btn-very"),
                yes: c(k.format({
                    tip: "满意",
                    num: n.rate.yes
                })).addClass("btn-yes"),
                no: c(k.format({
                    tip: "不满意",
                    num: n.rate.no
                })).addClass("btn-no")
            };
            if (n.isEvaluate && l[n.evaluate]) {
                l[n.evaluate].append('<b class="evaluate-tip evaluate-done" style="display:none;">已评价</b>')
            }
            c(c.string(o).format({
                guid: m.guid
            })).appendTo(m.target.empty());
            c.forEach(l,
            function(p) {
                m._getElement("inner").append(p);
                p.css("width", p.outerWidth())
            })
        },
        _getTipText: function() {
            return contentItem
        },
        _setTipText: function(k) {
            contentItem = k
        },
        favoriteSubmit: function() {
            var l = this,
            k = l.replyId;
            g.fire("login.check", {
                isLogin: function() {
                    var m = c.url.jsonToQuery({
                        uid: F.context("user")["id"],
                        qid: F.context("answers")[k]["qid"],
                        rid: k,
                        siteId: F.context("answers")[k]["user"]["openSiteId"],
                        which: l.nagetive
                    });
                    l.target.addClass("evaluated");
                    l.numScroll(c(l.whichBtn).find(".evaluate-num"));
                    c(l.whichBtn).append('<b class="evaluate-tip evaluate-done" style="display:none;">已评价</b>').mouseout();
                    if (l.isGoodValid) {
                        c.post("/c/qb_rating/set", m,
                        function(o, n, q) {
                            var p = q.responseText ? c.json.parse(q.responseText) : {
                                errorNo: 1
                            };
                            if (p.errorNo == 0) {
                                l._setTipText(["有针对性,完全解决问题!", "信息量丰富,很详细!", "答得挺客观实在!"]);
                                l.showTip({
                                    target: l.whichBtn,
                                    skin: "evaluate-open-tip",
                                    header: '<p class="f-12 f-black">给我们一点肯定,我们将更好地为您服务</p>',
                                    footer: ['<div class="tip-comment-box line mt-10">', '<div class="tip-comment-editor grid"></div>', '<a class="btn btn-24-white grid-r" title="按 Ctrl+Enter 发布"><em><b>发布</b></em></a>', '<p class="comment-alert" style="display:none;"></p>', "</div>"].join("")
                                })
                            } else {
                                l.showFloatLayer(l, l.whichBtn, "提交异常,提交失败")
                            }
                        })
                    } else {
                        c.post("/c/qb_rating/set", m,
                        function(o, n, q) {
                            var p = q.responseText ? c.json.parse(q.responseText) : {
                                errorNo: 1
                            };
                            if (p.errorNo == 0) {
                                l.showFloatLayer(l, l.whichBtn, "感谢您的评价，我们会努力做得更好")
                            } else {
                                l.showFloatLayer(l, l.whichBtn, "提交异常,提交失败")
                            }
                        })
                    }
                }
            })
        },
        nagetiveSubmit: function() {
            var l = this,
            k = l.replyId;
            g.fire("login.check", {
                isLogin: function() {
                    var m = c.url.jsonToQuery({
                        uid: F.context("user")["id"],
                        qid: F.context("answers")[k]["qid"],
                        rid: k,
                        siteId: F.context("answers")[k]["user"]["openSiteId"],
                        which: 3
                    });
                    if (l.isBadValid) {
                        l._setTipText(["太宽泛，要有针对性", "不要链接或电话，我要直接看答案", "不够客观，有广告嫌疑的说"]);
                        l.showTip({
                            target: l.whichBtn,
                            skin: "evaluate-open-tip",
                            header: '<p class="f-12 f-black">请您反馈"不满意"的原因,我们将努力提高</p>',
                            footer: ['<div class="tip-comment-box line mt-10">', '<div class="tip-comment-editor grid"></div>', '<a class="btn btn-24-white grid-r" title="按 Ctrl+Enter 发布"><em><b>发布</b></em></a>', '<p class="comment-alert" style="display:none;"></p>', "</div>"].join("")
                        })
                    } else {
                        c.post("/c/qb_rating/set", m,
                        function(o, n, q) {
                            var p = q.responseText ? c.json.parse(q.responseText) : {
                                errorNo: 1
                            };
                            if (p.errorNo == 0) {
                                l.target.addClass("evaluated");
                                c(l.whichBtn).append('<b class="evaluate-tip evaluate-done" style="display:none;">已评价</b>').mouseout();
                                l.numScroll(c(l.whichBtn).find(".evaluate-num"));
                                l.showFloatLayer(l, l.whichBtn, "您的反馈我们已经收到，非常感谢!")
                            } else {
                                l.showFloatLayer(l, l.whichBtn, "提交异常,提交失败")
                            }
                        })
                    }
                }
            })
        },
        showFloatLayer: function(n, k, m) {
            var l = '<div class="evaluate-text-open"><i class="i-tick mr-5"></i><span class="f-green">' + m + "</span>";
            var o = new j({
                content: l,
                target: k,
                width: 300,
                direction: "down",
                autoDispose: true
            });
            o.show();
            setTimeout(function() {
                o.hide();
                if (n.isLogin != "1") {
                    location.reload(true)
                }
            },
            3000)
        },
        submit: function(m) {
            var l = this,
            k = l.replyId;
            var n = c.url.jsonToQuery({
                uid: F.context("user")["id"],
                qid: F.context("answers")[k]["qid"],
                rid: k,
                siteId: F.context("answers")[k]["user"]["openSiteId"],
                which: l.nagetive
            });
            c.post("/c/qb_rating/set", n,
            function(p, o, r) {
                var q = r.responseText ? c.json.parse(r.responseText) : {
                    errorNo: 1
                };
                if (q.errorNo == 0) {
                    l.target.addClass("evaluated");
                    c(l.whichBtn).append('<b class="evaluate-tip evaluate-done" style="display:none;">已评价</b>').mouseout();
                    l.numScroll(c(l.whichBtn).find(".evaluate-num"))
                } else {
                    l.showFloatLayer(l, l.whichBtn, "提交异常,提交失败")
                }
            })
        },
        bind: function(m) {
            var k = this.target,
            l = this;
            l.once("tipload",
            function() {
                var o = c(l.tip.getTipBody());
                var p = new f({
                    target: o.find(".tip-comment-editor").get(0),
                    defaultContent: "请对我们的回答服务进行评论反馈",
                    width: 206
                });
                var n = o.find(".btn").eq(0);
                p.on("focus",
                function() {
                    var q = o.find(".comment-alert").eq(0);
                    q.html("").hide()
                });
                p.on("submit",
                function() {
                    var q = this.getContent();
                    if (q == this.defaultContent || c.string(q).trim() == "") {
                        h.alert("您输入的评论内容为空");
                        return
                    }
                    l.submitComment(q)
                });
                n.click(function() {
                    p.fire("submit")
                });
                l.once("commentsubmit",
                function(q) {
                    l.tip.hide();
                    l.nagetive == 3 && l.submit()
                })
            });
            if (k.hasClass("evaluate-mine")) {
                return
            }
            k.delegate(".evaluate-open-btn", "mouseover",
            function(o) {
                if (k.hasClass("evaluated")) {
                    var n = k.find(".evaluate-done").parent().width();
                    k.find(".evaluate-done").css({
                        width: n - 1,
                        padding: 0
                    }).show().siblings().hide();
                    return
                }
                if (c(this).hasClass("btn-no")) {
                    return
                }
                c(this).addClass("evaluate-hover")
            }).delegate(".evaluate-open-btn", "mouseout",
            function(n) {
                if (k.hasClass("evaluated")) {
                    k.find(".evaluate-done").hide().siblings().show();
                    return
                }
                if (c(this).hasClass("btn-no")) {
                    return
                }
                c(this).removeClass("evaluate-hover")
            }).delegate(".evaluate-open-btn", "click",
            function(n) {
                if (k.hasClass("evaluated")) {
                    return
                }
                l.whichBtn = this;
                if (c(this).hasClass("btn-no")) {
                    l.nagetive = 3;
                    l.nagetiveSubmit()
                } else {
                    l.nagetive = c(this).hasClass("btn-yes") ? 2 : 1;
                    l.favoriteSubmit()
                }
            })
        }
    });
    d = e;
    return d
},
["/static/common/lib/tangram/base/base.js", "/static/common/ui/baidu/baidu.js", "/static/question/ui/evaluate/evaluate.js", "/static/common/ui/tip/tip.js", "/static/common/ui/event/event.js", "/static/common/ui/dialog/dialog.js", "/static/common/ui/login/login.js", "/static/question/ui/editor/comment/comment.js"]);
F.module("/static/question/ui/egg/egg.js",
function(b, f) {
    var e = b("/static/common/lib/tangram/base/base.js"),
    g = b("/static/common/ui/event/event.js"),
    i = b("/static/common/ui/dialog/dialog.js");
    var d = {},
    k = false;
    function h() {
        var l = e('<div id="ik-qb-egg"/>').append(e('<div id="ik-qb-egg-hdl"/>'));
        var m = e("<a/>").prop({
            id: "ik-qb-egg-a",
            href: "#"
        }).appendTo(l);
        var n = e('<div id="ik-qb-egg-con"/>').appendTo(l);
        l.appendTo(document.body);
        e.swf.create({
            url: d.flashUrl,
            id: "ik-qb-egg-flash",
            width: 150,
            height: 150,
            menu: false,
            wmode: "transparent",
            allowscriptaccess: "sameDomain"
        },
        n.get(0));
        e.cookie.set("IK_EGG_QB", d.id, {
            path: "/",
            expires: e.date.parse(d.offlineTime),
            domain: location.host.replace(/:\d+/, "")
        });
        e("#ik-qb-egg-flash").mousedown(a);
        l.mousedown(a);
        m.click(function(o) {
            f.close();
            o.preventDefault()
        })
    }
    function c(l) {
        e.sio(d.activeUrl).callByServer(function(m) {
            if (m.status == d.activeStatus) {
                l()
            } else {
                l(true)
            }
        })
    }
    function a(l) {
        if (k || l.target.id == "ik-qb-egg-a") {
            return
        }
        var m = e("#ik-qb-egg-a").offset();
        if (l.pageX > m.left && l.pageY > m.top) {
            f.close();
            return
        }
        f.close();
        if (d.active == 1 && F.context("user").isLogin == 1) {
            c(function(n) {
                j(n)
            })
        } else {
            j()
        }
    }
    function j(o) {
        var l = d.dialogText,
        p = d.btnText;
        if (F.context("user").isLogin == 1) {
            l = d.dialogTextLogin || l;
            p = d.btnTextLogin || p
        }
        if (o) {
            l = d.dialogTextActive || l;
            p = d.btnTextActive || p
        }
        var m = ['<div class="ik-egg-dialog">', '<p id="ik-egg-text">', l, "</p>", '<p><a id="ik-egg-btn" class="btn btn-32-green" href="', d.targetUrl, '" target="_blank"><em><b>', d.btnText, "</b></em></a></p></div>"].join("");
        var n = new i({
            titleText: "知道提示",
            content: m,
            width: 358,
            height: 195,
            autoDispose: true,
            onshow: function() {
                if (d.dialogBackground) {
                    this.getElement("body").css("background", 'url("' + d.dialogBackground + '") no-repeat 0 0')
                }
                e("#ik-egg-text").css("margin-right", d.dialogTextMargin + "px");
                e("#ik-egg-btn").click(function(q) {
                    g.fire("dialog.close");
                    if (F.context("user").isLogin != 1 && d.guideLogin == 1) {
                        q.preventDefault();
                        g.fire("login.log", {
                            onLoginSuccess: function() {
                                d.guideLogin = 0;
                                if (d.active == 1) {
                                    c(function(r) {
                                        j(r)
                                    })
                                } else {
                                    j()
                                }
                            }
                        })
                    }
                })
            }
        })
    }
    f.init = function(l) {
        e.extend(d, l);
        var p = e.cookie.get("IK_EGG_QB"),
        o = Math.random(),
        m = e.date.parse(d.onlineTime),
        n = e.date.parse(d.offlineTime);
        if ((new Date()).getTime() < m.getTime() || (new Date()).getTime() >= n.getTime() || p == d.id) {
            return
        }
        if ((F.context("user").isLogin == 1 && o < d.loginRate) || (F.context("user").isLogin != 1 && o < d.notLoginRate)) {
            if ((d.limitGrade && parseInt(F.context("user").gradeIndex) < d.limitGrade) || (d.limitGoodRate && parseInt(F.context("user").goodRate) < d.limitGoodRate)) {
                return
            }
            h()
        }
    };
    f.close = function() {
        e("#ik-qb-egg").remove()
    };
    return f
},
["/static/common/lib/tangram/base/base.js", "/static/common/ui/event/event.js", "/static/common/ui/dialog/dialog.js"]);
F.module("/static/question/ui/submitjump/submitjump.js",
function(a, e) {
    var c = a("/static/common/lib/tangram/base/base.js"),
    g = a("/static/common/ui/event/event.js"),
    k = a("/static/common/ui/submit/submit.js"),
    f = a("/static/common/ui/log/log.js");
    var i = a("/static/common/ui/dialog/dialog.js");
    var h = "";
    var b = {
        100001 : function() {
            var l = c.cookie.get("IK_NEW_PHONE");
            var m = [];
            m.push('<div class="submit-jump-tip ask-jump-tip"><h2 class="f-yahei">您的疑问已经收到，请稍等5分钟吧！</h2><p>收到满意答案时，可别忘了及时进行采纳哦！</p>');
            if (l && new RegExp(/[0-9]/).test(l)) {
                m.push('<label><input type="checkbox" id="phone-set" checked/>有新回答时，免费接收短信通知');
                m.push("<span>" + l + "</span></label>");
                m.push('<a href="#" class="btn btn-32-green"><em><b>确定</b></em></a>');
                c.cookie.remove("IK_NEW_PHONE", {
                    path: "/"
                })
            } else {
                m.push('<a href="#" class="btn btn-32-green"><em><b>确定</b></em></a>');
                m.push('<span class="remind-seconds">还有<span id="remind-seconds">5</span>秒将自动关闭</span>')
            }
            m.push("</div>");
            h = c(m.join("")).get(0);
            c(".btn", h).on("click",
            function() {
                if (c("#phone-set").get(0) && c("#phone-set").get(0).checked) {
                    c.cookie.remove("IK_NEW_PHONESET", {
                        path: "/"
                    });
                    c.get("/api/remindset?flag=mobile&status=on&t=" + (new Date()).getTime(),
                    function(n) {},
                    "html");
                    new k({
                        params: {
                            cm: 100044,
                            qid: F.context("page").qid,
                            type: 1
                        },
                        errorDeal: function() {}
                    });
                    f.send({
                        type: 2013,
                        qb_phone_set: 1,
                        qb_phone_uname: F.context("user").name
                    })
                }
                if (c("#phone-set").get(0) && !c("#phone-set").get(0).checked) {
                    f.send({
                        type: 2013,
                        qb_phone_set: 0,
                        qb_phone_uname: F.context("user").name
                    })
                }
            })
        },
        100002 : function() {
            var l = [];
            l.push('<div class="submit-jump-tip supply-jump-tip"><h2 class="f-yahei">您的问题补充已提交成功！</h2>');
            l.push('<a href="#" class="btn btn-32-green"><em><b>确定</b></em></a>');
            l.push('<span class="remind-seconds">还有<span id="remind-seconds">5</span>秒将自动关闭</span>');
            l.push("</div>");
            h = c(l.join("")).get(0)
        }
    };
    var d = function() {
        var m = new i({
            contentType: "element",
            titleText: "提问成功",
            content: h,
            width: 400,
            height: 200,
            autoDispose: true,
            autoRender: false
        });
        var l = m.getElement();
        m.onbeforeshow = function() {
            c(".close-btn", l).css("display", "none")
        };
        m.onload = function() {
            c(".submit-jump-tip .btn", l).on("click",
            function() {
                m.hide()
            })
        };
        m.onshow = function() {
            var n = c("#remind-seconds", l);
            if (n) {
                setInterval(function() {
                    if (n.html() - 1 == 0) {
                        m.hide()
                    }
                    n.html(n.html() - 1)
                },
                1000)
            }
        };
        m.render()
    };
    var j = function() {
        var l = c.cookie.get("IK_SUCCESS_JUMP");
        if (!l) {
            return
        }
        b[l]();
        d();
        c.cookie.remove("IK_SUCCESS_JUMP", {
            path: "/"
        })
    };
    e.init = function() {
        j()
    };
    return e
},
["/static/common/lib/tangram/base/base.js", "/static/common/ui/event/event.js", "/static/common/ui/submit/submit.js", "/static/common/ui/log/log.js", "/static/common/ui/dialog/dialog.js"]);
F.module("/static/question/ui/countdown/countdown.js",
function(d, a) {
    var c = d("/static/common/lib/tangram/base/base.js");
    var b = d("/static/common/ui/event/event.js");
    function f(i, h) {
        var g = h - ("" + Math.abs(i)).length + 1;
        return Array(g > 0 ? g: 0).join(0) + i
    }
    var e = c.createClass(function(g) {
        var h = this;
        this.dataArr = [];
        c.each(g || [],
        function() {
            this.seconds > 0 && h.dataArr.push(this)
        });
        this._inter = null
    }).extend({
        execution: function() {
            var h = this,
            g = 0;
            c.each(this.dataArr,
            function(j) {
                var k = h._timer(--this.seconds);
                if (k == null) {
                    this.endFn.call(this);
                    h.dataArr.splice(j, 1)
                } else {
                    g++;
                    this.callback.call(this, k)
                }
            });
            g === 0 && h.stop()
        },
        add: function(g) {
            g.seconds > 0 && this.dataArr.push(g)
        },
        remove: function(g) {
            var h = this.dataArr;
            c.each(h,
            function(j) {
                this.name == g && h.splice(j, 1)
            })
        },
        start: function() {
            if (this._inter === null) {
                var g = this;
                this.execution();
                this._inter = setInterval(function() {
                    g.execution()
                },
                1000)
            }
            return this
        },
        stop: function() {
            clearInterval(this._inter);
            this._inter = null
        },
        _timer: function(h) {
            var g = {
                dd: Math.floor(h / (60 * 60 * 24)),
                HH: f(Math.floor(h / (60 * 60)) % 24, 2),
                mm: f(Math.floor(h / (60)) % 60, 2),
                ss: f(Math.floor(h / 1) % 60, 2)
            };
            if (g.dd <= 0 && g.HH <= 0 && g.mm <= 0 && g.ss <= 0) {
                g = null
            }
            return g
        }
    });
    a = e;
    return a
},
["/static/common/lib/tangram/base/base.js", "/static/common/ui/event/event.js"]);
F.module("/static/question/ui/lazyload/lazyload.js",
function(c, a) {
    var b = c("/static/common/lib/tangram/base/base.js");
    a.add = function(g, f, d) {
        var e = {
            offset: 150,
            method: "appendTo"
        };
        b.object.extend(e, d);
        e.target = b(g);
        if (e.method == "callback") {
            e.callback = f
        } else {
            e.callback = function() {
                b(f).each(function() {
                    if (b(this).data("img")) {
                        b("<img/>").prop("src", b(this).data("img"))[e.method](b(this))
                    }
                })
            }
        }
        e.loaded = false;
        if (!e.target || !e.target.length) {
            return
        }
        if (e.target.offset().top <= b(window).scrollTop() + b(window).height()) {
            e.loaded = true;
            e.callback()
        } else {
            b(window).scroll(function(i) {
                var h = b(window).scrollTop() + b(window).height();
                if (!e.loaded && h > e.target.offset().top - 150) {
                    e.loaded = true;
                    e.callback()
                }
            })
        }
    };
    return a
},
["/static/common/lib/tangram/base/base.js"]);
F.module("/static/question/ui/app-card/app-card.js",
function(e, i) {
    var g = e("/static/common/lib/tangram/base/base.js");
    var m = e("/static/common/ui/tip/tip.js");
    var j = e("/static/common/ui/event/event.js");
    var h = e("/static/common/ui/log/log.js");
    e("/static/common/ui/baidu/baidu.js");
    var d = {};
    var l = {};
    window.hasKeyword = d;
    var o = null,
    n = 0;
    var p = function() {
        var q = g.Deferred();
        g.sio("http://m.baidu.com/static/as/res2exe/js/res2exe_1.0.3.min.js?v=091818").callByBrowser(function() {
            q.resolve()
        });
        return q.promise()
    };
    var a = function(q) {
        g.sio("/baidu_as.js").callByBrowser(function() {
            AS_KEYWORDS = AS_KEYWORDS.sort(function(s, r) {
                return r.length - s.length
            });
            g(".best-text, .recommend-text").add(".answer-text").add(".q-content, .q-supply-content").each(function(s, v) {
                var r = v.innerHTML,
                t = /\d*$/g.exec(v.id)[0],
                u = F.context("answers");
                if (u[t] && u[t].insertLinkType > 0) {
                    return
                }
                g.forEach(AS_KEYWORDS,
                function(w, x) {
                    if (w == "百度输入法") {
                        w = "百度手机输入法"
                    }
                    if ((new RegExp(w + "|\\>" + w + "|" + w + "\\<\\/")).test(r) && !d[w]) {
                        d[w] = true;
                        r = r.replace(w, '<a href="#" class="app-keyword" data-index="' + x + '"></a>')
                    }
                });
                if (r != v.innerHTML) {
                    v.innerHTML = r;
                    g(v).find(".app-keyword").each(function(w, x) {
                        g(x).html(AS_KEYWORDS[g(x).data("index")])
                    })
                }
            });
            g.isFunction(q) && q(AS_KEYWORDS);
            if (d.abtestA || n == 2) {
                g(".related-list a").each(function() {
                    g(this).attr("log", g(this).attr("log") + ",app_spread:" + n)
                })
            }
            if (g(".app-keyword").size() > 0 || d.abtestA) {
                h.send({
                    type: 2065,
                    page: "baidu_as",
                    action: "pv",
                    abtest: n
                })
            }
        },
        {
            charset: "utf-8"
        })
    };
    var c = function(q, t) {
        var r = g.id();
        var s = g(q).find(".app-download");
        var u = "";
        s.attr("data_type", "apk");
        s.attr("data_url", t.downloadUrl);
        s.attr("data_name", t.sname);
        s.attr("data_package", t["package"]);
        s.attr("data_versionname", t.versionName);
        s.attr("data_icon", t.icon);
        s.attr("data_size", t.size);
        s.attr("data_from", "1001714m");
        s.click(function(v) {
            v.preventDefault();
            h.send({
                type: 2065,
                page: "baidu_as",
                action: "install_btn",
                abtest: n
            });
            bd_app_dl(this)
        })
    };
    var f = function(s, r) {
        if (!r.tip) {
            r.showSize = b(r.size);
            var q = ['<div class="app-top"><a target="_blank" href="', r.link, '" class="app-title f-yahei">', r.sname, , (r.aladdinFlag ? '<div class="app-official f-simsun pl-5 pr-5 ml-5">官方版</div>': ""), '</a></div><div class="app-content f-gray f-12">', '<div class="app-score"><span class="app-star app-star-', Math.round(r.score / 10), '"></span>', (r.score / 20).toFixed(1), "分</div>", '<a href="#" class="btn app-download btn-32-green"><em><b><i></i>直接安装</b></em></a>', "<ul><li>版本：", r.versionName, "</li>", "<li>大小：", r.showSize, "</li>", "<li>更新时间：", r.updateTime, "</li></ul></div>", '<a class="app-icon" target="_blank" href="', r.link, '"><img src="', r.icon, '" width="72" height="72" /></a>'];
            r.tip = new m({
                skin: "ik-tip-app-card",
                direction: "down",
                width: 350,
                closebox: false,
                arrow: false,
                radius: false,
                target: s,
                content: q.join("")
            });
            r.tip.on("show",
            function() {
                g(this.getTipContainer()).mouseover(function() {
                    clearTimeout(r.timer)
                }).mouseout(function() {
                    s.mouseout()
                });
                j.on("appcard.close",
                function() {
                    r.tip.hide()
                });
                if (!r.inited) {
                    if (!o) {
                        o = p()
                    }
                    o.done(function() {
                        c(r.tip.getTipBody(), r)
                    });
                    r.inited = true
                }
            })
        }
        r.timer = setTimeout(function() {
            j.fire("appcard.close");
            r.tip.show()
        },
        500)
    };
    function b(q) {
        var r = 0;
        if (q > 1048576) {
            r = Math.floor(q / 1048576) + "MB"
        } else {
            if (q > 1024) {
                r = Math.floor(q / 1024) + "KB"
            }
        }
        return r
    }
    function k(s, r) {
        var q = ['<div class="line pt-20 f-aid wgt-app-spread">', '<p class="title">根据答案，推荐您安装<strong>#{keyword}</strong>试试</p>', '<div class="app-spread-box">', '<div class="grid app-icon">', '<a href="#{link}&f=zhidao" log="pos:app_spread_img,evtType:click" target="_blank">', '<img src="#{icon}" border="0" width="50" height="50" />', "</a>", "</div>", '<div class="grid ml-20">', "<p>", '<a class="f-aid" href="#{link}&f=zhidao" log="pos:app_spread_title,evtType:click" target="_blank">#{keyword}</a>', '<em class="app-official f-simsun pl-5 ml-5">官方版</em>', "</p>", '<p class="f-aid">', '<em class="app-score"><span class="app-star app-star-#{scoreC}"></span>#{scoreB}分</em>', '<span class="f-pipe">|</span>', "<span>更新时间:#{updateTime}</span>", '<span class="f-pipe">|</span>', "<span>大小:#{showSize}</span>", "</p>", "</div>", '<div class="grid-r mt-10">', '<a href="#" class="btn app-download btn-32-green"><em><b><i></i>直接安装</b></em></a>', "</div>", "</div>", "</div>"].join("");
        g.get("/api/appinfo?word=" + encodeURIComponent(r),
        function(t) {
            t.data.showSize = b(t.data.size);
            t.data.keyword = r;
            t.data.scoreC = Math.round(t.data.score / 10);
            t.data.scoreB = (t.data.score / 20).toFixed(1);
            g(g.string(q).format(t.data)).appendTo(g(s).parents(".content").next());
            j.fire("log.init", {
                query: ".app-spread-box a",
                type: 2065
            });
            g.fx.expand(g(".wgt-app-spread")[0], {
                duration: 300,
                onafterfinish: function() {}
            });
            if (!o) {
                o = p()
            }
            o.done(function() {
                c(g(".wgt-app-spread"), t.data)
            })
        },
        "json")
    }
    g("#qb-content").on("mouseover", ".app-keyword",
    function(s) {
        var r = g(this),
        q = g(this).text();
        if (l[q]) {
            f(r, l[q]);
            return
        }
        g.get("/api/appinfo?word=" + encodeURIComponent(q),
        function(t) {
            l[q] = t.data;
            t.data.link += "&f=zhidao";
            r.prop("href", t.data.link);
            r.prop("target", "_blank");
            f(r, t.data)
        },
        "json")
    }).on("mouseout", ".app-keyword",
    function(r) {
        var q = l[g(this).text()];
        if (!q) {
            return
        }
        clearTimeout(q.timer);
        if (q.tip && q.tip.getStatus() == "show") {
            q.timer = setTimeout(function() {
                q.tip.hide()
            },
            500)
        }
    });
    i.init = function(q, r) {
        n = q;
        a(r)
    };
    return i
},
["/static/common/lib/tangram/base/base.js", "/static/common/ui/tip/tip.js", "/static/common/ui/event/event.js", "/static/common/ui/log/log.js", "/static/common/ui/baidu/baidu.js"]);
F.module("/static/question/ui/ed2k/ed2k.js",
function(c, h) {
    var f = c("/static/common/lib/tangram/base/base.js"),
    g = c("/static/common/ui/log/log.js"),
    m = c("/static/common/ui/login/login.js"),
    j = c("/static/common/ui/event/event.js"),
    n = c("/static/common/ui/uri/uri.js"),
    k = c("/static/common/ui/dialog/dialog.js");
    window.bdplayerUa = F.context("page").bdplayer;
    var i = !!location.href.match(/video=/);
    var p = function(r) {
        var q = f.Deferred();
        f.sio(r).callByBrowser(function() {
            q.resolve()
        });
        return q.promise()
    };
    var a, l, o = -1;
    var e = function(s) {
        var u = null;
        try {
            u = new ActiveXObject("ThunderAgent.Agent")
        } catch(t) {
            try {
                u = new ActiveXObject("ThunderAgent.Agent.1")
            } catch(t) {}
        }
        if (u) {
            try {
                u.CallAddTask(s, "", "", 1, "", "");
                return true
            } catch(t) {
                try {
                    u.AddTask(s, "", "", "", "", 1, 1, 10);
                    u.CommitTasks();
                    return true
                } catch(t) {}
            }
        }
        try {
            var r = navigator.mimeTypes["application/np_xunlei_plugin"];
            var q = document.createElement("embed");
            q.style.visibility = "hidden";
            q.type = "application/np_xunlei_plugin";
            q.width = 0;
            q.height = 0;
            document.body.appendChild(q);
            if (r && q.DownLoadByThunderPlugin) {
                q.DownLoadByThunderPlugin(s);
                return true
            }
        } catch(t) {}
        return false
    };
    var b = function(r, q, t) {
        var r = r.replace(/[^\x00-\xff]/g, encodeURIComponent);
        try {
            r = decodeURIComponent(r);
            q = decodeURIComponent(q);
            done()
        } catch(s) {
            if (!a) {
                a = p("http://img.iknow.bdimg.com/question/gbk-url.js")
            }
            a.done(function() {
                try {
                    r = GBK_URL.decode(r);
                    q = GBK_URL.decode(q)
                } catch(u) {}
                t({
                    ed2kLink: r,
                    filename: q
                })
            })
        }
    };
    var d = function(q) {
        var r = f(".ed2k-wrap");
        if (r.size()) {
            g.send({
                type: 2065,
                page: "qb_ed2k",
                action: "ed2k_pv",
                referrer: document.referrer
            })
        }
        r.each(function(v, s) {
            var w = f(s).data("link"),
            t = f(s).data("filename");
            displayLink = w.replace(/[^\x00-\xff]/g, encodeURIComponent);
            displayLink = displayLink.substr(0, 150) + "...";
            var u = ['<div class="ed2k-con">', '<a class="ed2k-link">', f.string(displayLink).encodeHTML(), "</a>", '<a class="btn btn-24-white btn-play"><em><b><span>在线播放<i></i></span></b></em></a>', "</div>"].join("");
            if (!i) {
                u += '<p class="f-12 f-gray ed2k-comment">请<a class="baidu-player-link" target="_blank" href="http://player.baidu.com/player3/index.html?tn=141">下载百度影音</a>在线播放，或<a class="ed2k-copy-link" data-clipboard-text="' + f.string(w).encodeHTML() + '" href="' + f.string(w).encodeHTML() + '">复制链接</a>，使用其他软件进行下载。</p>'
            }
            f(s).html(u);
            b(w, t,
            function(x) {
                f(s).data("link", x.ed2kLink);
                f(s).data("filename", x.filename)
            });
            F.use("/static/common/ui/zeroClipboard/zeroClipboard.js",
            function(x) {
                var y = new ZeroClipboard(f(s).find(".ed2k-copy-link")[0], {
                    moviePath: n.clipboardSwf
                });
                y.on("complete",
                function(z) {
                    z.resetBridge();
                    k.alert("链接已复制到剪贴版");
                    g.send({
                        type: 2065,
                        page: "qb_ed2k",
                        action: "ed2k_copy_link_click"
                    })
                })
            })
        })
    };
    h.init = function() {
        f(function() {
            if (f.browser.ie && f.browser.ie <= 6) {
                setTimeout(function() {
                    d()
                },
                300)
            } else {
                d()
            }
        });
        f("#qb-content").on("click", ".ed2k-wrap .baidu-player-link",
        function(q) {
            g.send({
                type: 2065,
                page: "qb_ed2k",
                action: "baidu_player_click"
            })
        }).on("mousedown", ".ed2k-wrap .btn-play",
        function(q) {
            g.send({
                type: 2065,
                page: "qb_ed2k",
                action: "ed2k_play_click",
                referrer: document.referrer
            })
        }).on("mousedown", ".ed2k-wrap .ed2k-link",
        function(q) {
            g.send({
                type: 2065,
                page: "qb_ed2k",
                action: "ed2k_link_click",
                referrer: document.referrer
            })
        }).on("click", ".ed2k-wrap .ed2k-link, .ed2k-wrap .btn-play",
        function(r) {
            r.preventDefault();
            var q = f(r.target).closest(".ed2k-wrap");
            if (!l) {
                window.BdParam = {};
                f('<div id="Bdobj" style="width: 0px;height: 0px;"></div><div id="callbdplay" style="width: 0px;height: 0px;"></div>').appendTo("body");
                l = p("http://php.player.baidu.com/bdplayer/com_install.js")
            }
            l.done(function() {
                bdplayer.url = q.data("link");
                bdplayer.title = q.data("filename");
                if (o == -1) {
                    o = bdplayer.IsInstall()
                }
                if (o) {
                    setTimeout(function() {
                        bdplayer.ClientPlay(q.data("link"), q.data("filename"))
                    },
                    1000);
                    return
                }
                if (bdplayer.VerUp) {
                    k.alert("为给您更好的观影体验，请下载最新版百度影音进行观赏。", {
                        buttons: {
                            items: [{
                                text: "下载",
                                click: function() {
                                    window.open("http://player.baidu.com/player3/index.html?tn=141");
                                    j.fire("dialog.close")
                                }
                            }],
                            align: "center",
                            enable: true
                        }
                    })
                } else {
                    if (e(q.data("link"))) {
                        return
                    }
                    new k({
                        titleText: "知道提示",
                        content: '<div class="ed2k-dialog">您可以选择：<br/>1. 下载百度影音，直接在线播放；<br/>2. 复制链接，使用其他软件进行下载。</div>',
                        autoDispose: true,
                        buttons: {
                            items: [{
                                text: "下载百度影音",
                                btnClass: "btn-32-green",
                                click: function() {
                                    window.open("http://player.baidu.com/player3/index.html?tn=141");
                                    j.fire("dialog.close")
                                }
                            },
                            {
                                text: "复制链接",
                                btnClass: "btn-32-silver btn-dialog-copy"
                            }],
                            align: "center",
                            enable: true
                        },
                        width: 400,
                        height: 180
                    });
                    f(".btn-dialog-copy").attr("data-clipboard-text", q.data("link"));
                    F.use("/static/common/ui/zeroClipboard/zeroClipboard.js",
                    function(s) {
                        var t = new ZeroClipboard(f(".btn-dialog-copy")[0], {
                            moviePath: n.clipboardSwf
                        });
                        t.on("complete",
                        function(u) {
                            u.resetBridge();
                            j.fire("dialog.close");
                            k.alert("链接已复制到剪贴版")
                        })
                    })
                }
            })
        })
    };
    return h
},
["/static/common/lib/tangram/base/base.js", "/static/common/ui/log/log.js", "/static/common/ui/login/login.js", "/static/common/ui/event/event.js", "/static/common/ui/uri/uri.js", "/static/common/ui/dialog/dialog.js"]);
F.module("/static/question/ui/file/file.js",
function(h, v) {
    var c = h("/static/common/lib/tangram/base/base.js"),
    g = h("/static/common/ui/log/log.js"),
    a = h("/static/common/ui/util/util.js"),
    f = h("/static/common/ui/event/event.js"),
    k = h("/static/common/ui/submit/submit.js"),
    e = h("/static/common/ui/dialog/dialog.js");
    h("/static/common/ui/baidu/baidu.js");
    F.context("answer-file", {});
    var s = 0,
    r = [],
    q = F.context("page")["rankFile"];
    var t = [],
    l = [],
    o = [],
    n = [],
    b = [];
    c("file").each(function(A, D) {
        if (A > 9) {
            return
        }
        var x = c(D),
        E = x.parentsUntil(".answer").parent(".answer"),
        y = x.attr("fsid") || "",
        w = c.url.getQueryValue(x.attr("link"), "shareid"),
        C = E && E.attr("id").match(/\d+/)[0],
        B = E && F.context("answers")[C]["qid"],
        z = (E && F.context("answers")[C]["uid"]) || "";
        t.push(y);
        l.push(w);
        o.push(C);
        n.push(B);
        b.push(z);
        if (q == "0") {
            if (!E.hasClass("answer-hide")) {
                r.push(y)
            }
        } else {
            if (q == "1") {
                if (!E.hasClass("answer-fold") && !E.hasClass("answer-hide")) {
                    r.push(y)
                }
            }
        }
    });
    var d = function(x) {
        x = x || "default";
        var z = {
            icon_file_image: "jpg,jpeg,gif,bmp,png,jpe,cur,svg,svgz,tif,tiff,ico",
            icon_file_visio: "vsd,vsdx",
            icon_file_pdf: "pdf",
            icon_file_word: "doc,docx,ods,ots,odt,rtf,dot,dotx,odm",
            icon_file_excel: "xls,xlsx,xlt,xltx,csv",
            icon_file_text: "txt,html,htm,xhtml,xml,js,css",
            icon_file_music: "wma,wav,mp3,aac,ra,ram,mp2,ogg,aif,mpega,amr,mid,midi",
            icon_file_video: "wmv,rmvb,mpeg4,mpeg2,flv,avi,3gp,mpga,qt,rm,wmz,wmd,wvx,wmx,wm,swf,mpg,mp4,mkv,mpeg,mov",
            icon_file_powerpoint: "ppt,pptx,pps,pot,ppsx,potx",
            icon_file_ipa: "ipa",
            icon_file_exe: "exe,msi",
            icon_file_zip: "zip,rar,7z,tar,gz",
            icon_file_apk: "apk",
            icon_file_default: "default",
            icon_file_torrent: "torrent"
        },
        w = {};
        for (i in z) {
            var y = z[i].split(",");
            for (j in y) {
                w.hasOwnProperty(y[j]);
                if (w[y[j]] == undefined) {
                    w[y[j]] = i
                }
            }
        }
        return w[x.toLowerCase()] ? w[x.toLowerCase()] : w["default"]
    };
    var m = function(x) {
        var w = ["B", "K", "M", "G", "T"];
        var y = Math.min(Math.max(Math.floor(Math.log(x) / Math.LN2 / 10), 1), 5);
        return Math.round(x * 100 / Math.pow(2, y * 10)) / 100 + w[y]
    };
    function u(w) {
        c("file").each(function(H, L) {
            var A = c(L),
            z = "http://pan.baidu.com" + A.attr("link") + "&app=zd",
            N = A.parentsUntil(".answer").parent(".answer"),
            K = N && N.attr("id").match(/\d+/)[0],
            E = A.parent().hasClass("replyask-content") ? (A.parent().attr("id").match(/\d+/)[0]) : 0,
            G = A.attr("fsid") || "",
            M = A.attr("wealth") || 0;
            var D = (E > 0) ? E: K;
            var C;
            if (!w || !!w.errno) {
                C = ['<div class="file line mt-10 f-12 file-fail">', '<span class="ml-10 mr-5">附件加载失败，请</span>', '<a target="_self" href="javascript:window.location.reload();">点击刷新</a>', "</div>"].join("")
            } else {
                var y = false;
                c(w.data).each(function(Q, S) {
                    var R = S.fileMeta && S.fileMeta["fs_id"] && S.shareMeta && (S.shareMeta["errno"] == 0) && (S.shareMeta["status"] == 0);
                    if (R) {
                        if (S.fileMeta["fs_id"] == G) {
                            y = true;
                            var P = S.fileMeta,
                            U = P.server_filename.split("."),
                            V = P.server_filename;
                            C = ['<div class="file line mt-10 f-12">', '<div class="file-l">', '<div class="file-r">', '<a href="#" target="_blank" class="grid mr-10 fileIcon-big ', d(U[U.length - 1]), '"></a>', '<div class="info grid">', "<p>", '<a href="#" target="_blank" class="f-yahei" title="', c.string.encodeHTML(V), '">', c.string.encodeHTML(a.suffixStr(V, 26)), '</a><span class="f-gray ml-10">大小：', m(P.size), "</span>"];
                            if (M > 0 && F.context("user")["isAsker"] != "1") {
                                C.push('<span class="f-pipe">|</span><span class="f-gray">所需财富值：' + M + "</span>")
                            }
                            C.push('</p><p class="f-gray p-last f-green"><i class="i-solid-ok"></i> 已经过百度安全检测,放心下载');
                            C.push('</p></div><a class="grid-r btn file-btn" target="_blank" href="#"><em><b><span class="btn-bold-down">点击下载</span><span class="btn-down-num">下载量：' + (S.shareMeta["downloadcnt"] || 0) + "</span></b></em></a>");
                            C.push("</div></div></div>");
                            C = C.join("");
                            F.context("answer-file")[D] = {
                                error: false,
                                fileInfo: {
                                    fs_id: G,
                                    path: P.path,
                                    size: P.size,
                                    md5: P.md5,
                                    wealth: M
                                }
                            };
                            c(L).parent().delegate(".file a", "click",
                            function(Z) {
                                Z.preventDefault();
                                if (M > 0 && F.context("user")["isAsker"] != "1" && F.context("answers")[K]["isCurrentUser"] != "1") {
                                    var W = function(ab) {
                                        var aa = ['<p class="mt-10 pl-10">', c.string.encodeHTML(a.suffixStr(P.server_filename, 36)), '<span class="ml-10 f-aid">(', m(P.size), ")</span><p>", '<div class="wealth-wraper"><p class="mb-10">下载所需财富值：<span class="f-bold">', M, "</span></p>", "<p>您剩余的财富值：", ab, "</p></div>"];
                                        return aa.join("")
                                    };
                                    var Y = false;
                                    var X = {
                                        type: 2014,
                                        action: "click",
                                        module: "question",
                                        wealth: M,
                                        wealthLess: Y
                                    };
                                    f.fire("login.check", {
                                        isLogin: function() {
                                            var ad = (F.context("user")["wealth"]) ? parseInt(F.context("user")["wealth"], 10) : 0;
                                            if (ad < M) {
                                                Y = true
                                            }
                                            var aa = Y ? ('<span class="f-orange f-bold">' + ad + '</span><a target="_blank" class="ml-10 f-12" href="http://www.baidu.com/search/zhidao_help.html#知道积分">如何赚取财富值</a>') : ('<span class="f-orange f-bold">' + ad + "</span>");
                                            var ae = Y ? "btn-32-disabled": "btn-32-green";
                                            var af = ['<div class="tang-footer h-center mt-15"><a class="file-dbtn mr-10 btn ', ae, '" href="#"><em><b>下载</b></em></a>', '<a class="file-cbtn ml-10 btn btn-32-white" href="#"><em><b>取消</b></em></a></div>'].join("");
                                            var ab = false;
                                            var ac = new e({
                                                type: "confirm",
                                                titleText: "下载文件",
                                                width: 440,
                                                height: 250,
                                                content: W(aa) + af,
                                                buttons: {
                                                    enable: false
                                                },
                                                onload: function() {
                                                    if (ab) {
                                                        return
                                                    }
                                                    ab = true;
                                                    c(".tang-footer").delegate("a.file-dbtn", "click",
                                                    function(ah) {
                                                        ah.preventDefault();
                                                        g.send(c.object.extend(X, {
                                                            pos: "accept-btn",
                                                            isLogin: 1
                                                        }));
                                                        if (!Y) {
                                                            var ag = window.open("about:blank");
                                                            var ai = {
                                                                cm: 100675,
                                                                qid: F.context("answers")[K]["qid"],
                                                                rid: K,
                                                                raid: E || 0,
                                                                fsid: G
                                                            };
                                                            f.fire("login.check", {
                                                                isLogin: function() {
                                                                    new k({
                                                                        params: ai,
                                                                        hasJump: false,
                                                                        beforeJump: function() {
                                                                            ag.location.href = z
                                                                        }
                                                                    });
                                                                    f.fire("dialog.close")
                                                                }
                                                            })
                                                        }
                                                    });
                                                    c(".tang-footer").delegate("a.file-cbtn", "click",
                                                    function(ag) {
                                                        ag.preventDefault();
                                                        f.fire("dialog.close");
                                                        g.send(c.object.extend(X, {
                                                            pos: "cancel-btn",
                                                            isLogin: 1
                                                        }));
                                                        if (Y) {
                                                            location.reload()
                                                        }
                                                    });
                                                    c(".tang-title").delegate("a.close-btn", "click",
                                                    function() {
                                                        g.send(c.object.extend(X, {
                                                            pos: "close-btn",
                                                            isLogin: 1
                                                        }));
                                                        if (Y) {
                                                            location.reload()
                                                        }
                                                    })
                                                }
                                            })
                                        },
                                        noLogin: function() {
                                            var aa = new e({
                                                type: "confirm",
                                                titleText: "下载文件",
                                                width: 440,
                                                height: 250,
                                                content: W("登录后查看"),
                                                buttons: {
                                                    items: [{
                                                        text: "登录下载",
                                                        click: function() {
                                                            f.fire("login.log");
                                                            g.send(c.object.extend(X, {
                                                                pos: "accept-btn",
                                                                isLogin: 0
                                                            }));
                                                            f.fire("dialog.close")
                                                        }
                                                    },
                                                    {
                                                        text: "取消",
                                                        btnClass: "btn-32-white",
                                                        click: function() {
                                                            g.send(c.object.extend(X, {
                                                                pos: "cancel-btn",
                                                                isLogin: 0
                                                            }));
                                                            f.fire("dialog.close")
                                                        }
                                                    }],
                                                    align: "center",
                                                    enable: true
                                                },
                                                onload: function() {
                                                    c(".tang-title").delegate("a.close-btn", "click",
                                                    function() {
                                                        g.send(c.object.extend(X, {
                                                            pos: "close-btn",
                                                            isLogin: 0
                                                        }))
                                                    })
                                                }
                                            })
                                        }
                                    })
                                } else {
                                    window.open(z)
                                }
                                g.send({
                                    type: 2014,
                                    url: this.href,
                                    wealth: M,
                                    action: "click",
                                    pos: "file-download"
                                })
                            })
                        }
                    } else {
                        if (!y) {
                            s++;
                            var O = F.context("answers")[K]["isCurrentUser"] == "1" ? "您": "回答者";
                            var T = F.context("answers")[K]["isCurrentUser"] == "1" ? "，请重新上传或删除。": "";
                            C = ['<div class="file line mt-10 f-12 file-fail">', '<span class="fail">很抱歉，', O, "上传的附件已失效", T, "</span>", "</div>"].join("");
                            F.context("answer-file")[D] = {
                                error: true,
                                fileInfo: {}
                            }
                        }
                    }
                })
            }
            var x = A.parents("dd"),
            J = x.attr("createTime"),
            I = (!J && c.string(x.text()).trim() == "") || (J && (c.string(x.text()).trim() == J));
            if (x.hasClass("replyask-content") && (I || c.string(x.text()).trim() == "删除")) {
                C = "<br />" + C
            }
            var B = N.find(".wgt-wenku-link");
            if (B && B.length > 0) {
                A.after(B);
                B.show()
            }
            A.after(C).remove()
        })
    }
    function p(w) {
        if (t.length) {
            c.ajax({
                url: "/api/pcs",
                type: "GET",
                data: {
                    fsid: t.join(),
                    uid: b.join(),
                    shareid: l.join(),
                    qid: n.join(),
                    rid: o.join()
                },
                async: true,
                dataType: "json",
                complete: function(z, x) {
                    var y;
                    if (x == "success") {
                        var A = c.json.parse(z.responseText);
                        u(A)
                    } else {
                        u()
                    }
                    g.addKey({
                        file: s + "/" + t.length,
                        fileShow: r.length
                    });
                    if (c.isFunction(w)) {
                        w()
                    }
                }
            })
        }
    }
    v.init = p;
    return v
},
["/static/common/lib/tangram/base/base.js", "/static/common/ui/log/log.js", "/static/common/ui/util/util.js", "/static/common/ui/event/event.js", "/static/common/ui/submit/submit.js", "/static/common/ui/dialog/dialog.js", "/static/common/ui/baidu/baidu.js"]);
F.module("/static/question/ui/thunder/thunder.js",
function(a, f) {
    var d = a("/static/common/lib/tangram/base/base.js"),
    e = a("/static/common/ui/log/log.js"),
    h = a("/static/common/ui/event/event.js"),
    j = a("/static/common/ui/uri/uri.js"),
    i = a("/static/common/ui/dialog/dialog.js");
    var c = function(m) {
        var o = null;
        try {
            o = new ActiveXObject("ThunderAgent.Agent")
        } catch(n) {
            try {
                o = new ActiveXObject("ThunderAgent.Agent.1")
            } catch(n) {}
        }
        if (o) {
            try {
                o.CallAddTask(m, "", "", 1, "", "");
                return true
            } catch(n) {
                try {
                    o.AddTask(m, "", "", "", "", 1, 1, 10);
                    o.CommitTasks();
                    return true
                } catch(n) {}
            }
        }
        try {
            var l = navigator.mimeTypes["application/np_xunlei_plugin"];
            var k = document.createElement("embed");
            k.style.visibility = "hidden";
            k.type = "application/np_xunlei_plugin";
            k.width = 0;
            k.height = 0;
            document.body.appendChild(k);
            if (l && k.DownLoadByThunderPlugin) {
                k.DownLoadByThunderPlugin(m);
                return true
            }
        } catch(n) {}
        return false
    };
    var g = function() {
        var k = d(".thunder-wrap");
        if (k.size()) {
            e.send({
                type: 2014,
                page: "question",
                action: "pv",
                area: "thunder-link",
                total: k.size()
            });
            e.addKey({
                hasThunder: 1
            })
        }
        k.each(function(m, o) {
            var n = d(o).data("link"),
            l = ['<div class="thunder-con">', '<a class="thunder-link cur-pointer" data-link="', n, '">', n, "</a>", '<a class="btn btn-24-white btn-thunder" data-link="', n, '"><em><b>立即下载</b></em></a>', "</div>", '<p class="f-12 f-gray ed2k-comment">', '请安装迅雷后点击下载，或<span class="thunder-copy-link f-blue" data-clipboard-text="', n, '">复制链接</span>进行下载。', "</p>"].join("");
            d(o).html(l);
            F.use("/static/common/ui/zeroClipboard/zeroClipboard.js",
            function(p) {
                var q = new p(d(o).find(".thunder-copy-link")[0], {
                    moviePath: j.clipboardSwf
                });
                q.on("mousedown",
                function(r) {
                    e.send({
                        type: 2014,
                        page: "question",
                        area: "thunder-copy",
                        action: "click"
                    })
                });
                q.on("complete",
                function(r) {
                    r.resetBridge();
                    i.alert("链接已复制到剪贴版")
                })
            })
        })
    };
    var b = function(l, k) {
        e.send({
            type: 2014,
            page: "question",
            area: l,
            action: "click"
        });
        if (!c(k)) {
            i.alert("请安装迅雷后点击下载！")
        }
    };
    f.init = function() {
        d(function() {
            if (d.browser.ie && d.browser.ie <= 6) {
                setTimeout(function() {
                    g()
                },
                300)
            } else {
                g()
            }
        });
        d(".thunder-wrap").delegate(".thunder-link", "click",
        function(l) {
            l.preventDefault();
            var k = d(this).data("link");
            b("thunder-dw-link", k)
        }).delegate(".btn-thunder", "click",
        function(l) {
            l.preventDefault();
            var k = d(this).data("link");
            b("thunder-dw-btn", k)
        })
    };
    return f
},
["/static/common/lib/tangram/base/base.js", "/static/common/ui/log/log.js", "/static/common/ui/event/event.js", "/static/common/ui/uri/uri.js", "/static/common/ui/dialog/dialog.js"]);
F.module("/static/question/ui/audio/jplayer/jplayer.js",
function(b, a) {
    var c = b("/static/common/ui/jquery/jquery.js"); (function(d, e) {
        e(c)
    } (this,
    function(i, j) {
        i.fn.jPlayer = function(n) {
            var m = "jPlayer";
            var k = typeof n === "string",
            l = Array.prototype.slice.call(arguments, 1),
            o = this;
            n = !k && l.length ? i.extend.apply(null, [true, n].concat(l)) : n;
            if (k && n.charAt(0) === "_") {
                return o
            }
            if (k) {
                this.each(function() {
                    var p = i(this).data(m),
                    q = p && i.isFunction(p[n]) ? p[n].apply(p, l) : p;
                    if (q !== p && q !== j) {
                        o = q;
                        return false
                    }
                })
            } else {
                this.each(function() {
                    var p = i(this).data(m);
                    if (p) {
                        p.option(n || {})
                    } else {
                        i(this).data(m, new i.jPlayer(n, this))
                    }
                })
            }
            return o
        };
        i.jPlayer = function(l, m) {
            if (arguments.length) {
                this.element = i(m);
                this.options = i.extend(true, {},
                this.options, l);
                var k = this;
                this.element.bind("remove.jPlayer",
                function() {
                    k.destroy()
                });
                this._init()
            }
        };
        if (typeof i.fn.stop !== "function") {
            i.fn.stop = function() {}
        }
        i.jPlayer.emulateMethods = "load play pause";
        i.jPlayer.emulateStatus = "src readyState networkState currentTime duration paused ended playbackRate";
        i.jPlayer.emulateOptions = "muted volume";
        i.jPlayer.reservedEvent = "ready flashreset resize repeat error warning";
        i.jPlayer.event = {};
        i.each(["ready", "flashreset", "resize", "repeat", "click", "error", "warning", "loadstart", "progress", "suspend", "abort", "emptied", "stalled", "play", "pause", "loadedmetadata", "loadeddata", "waiting", "playing", "canplay", "canplaythrough", "seeking", "seeked", "timeupdate", "ended", "ratechange", "durationchange", "volumechange"],
        function() {
            i.jPlayer.event[this] = "jPlayer_" + this
        });
        i.jPlayer.htmlEvent = ["loadstart", "abort", "emptied", "stalled", "loadedmetadata", "loadeddata", "canplay", "canplaythrough", "ratechange"];
        i.jPlayer.pause = function() {
            i.each(i.jPlayer.prototype.instances,
            function(l, k) {
                if (k.data("jPlayer").status.srcSet) {
                    k.jPlayer("pause")
                }
            })
        };
        i.jPlayer.timeFormat = {
            showHour: false,
            showMin: true,
            showSec: true,
            padHour: false,
            padMin: true,
            padSec: true,
            sepHour: ":",
            sepMin: ":",
            sepSec: ""
        };
        var f = function() {
            this.init()
        };
        f.prototype = {
            init: function() {
                this.options = {
                    timeFormat: i.jPlayer.timeFormat
                }
            },
            time: function(t) {
                t = (t && typeof t === "number") ? t: 0;
                var n = new Date(t * 1000),
                l = n.getUTCHours(),
                m = this.options.timeFormat.showHour ? n.getUTCMinutes() : n.getUTCMinutes() + l * 60,
                o = this.options.timeFormat.showMin ? n.getUTCSeconds() : n.getUTCSeconds() + m * 60,
                r = (this.options.timeFormat.padHour && l < 10) ? "0" + l: l,
                q = (this.options.timeFormat.padMin && m < 10) ? "0" + m: m,
                k = (this.options.timeFormat.padSec && o < 10) ? "0" + o: o,
                p = "";
                p += this.options.timeFormat.showHour ? r + this.options.timeFormat.sepHour: "";
                p += this.options.timeFormat.showMin ? q + this.options.timeFormat.sepMin: "";
                p += this.options.timeFormat.showSec ? k + this.options.timeFormat.sepSec: "";
                return p
            }
        };
        var d = new f();
        i.jPlayer.convertTime = function(k) {
            return d.time(k)
        };
        i.jPlayer.uaBrowser = function(p) {
            var l = p.toLowerCase();
            var n = /(webkit)[ \/]([\w.]+)/;
            var q = /(opera)(?:.*version)?[ \/]([\w.]+)/;
            var m = /(msie) ([\w.]+)/;
            var o = /(mozilla)(?:.*? rv:([\w.]+))?/;
            var k = n.exec(l) || q.exec(l) || m.exec(l) || l.indexOf("compatible") < 0 && o.exec(l) || [];
            return {
                browser: k[1] || "",
                version: k[2] || "0"
            }
        };
        i.jPlayer.uaPlatform = function(q) {
            var n = q.toLowerCase();
            var r = /(ipad|iphone|ipod|android|blackberry|playbook|windows ce|webos)/;
            var p = /(ipad|playbook)/;
            var m = /(android)/;
            var o = /(mobile)/;
            var k = r.exec(n) || [];
            var l = p.exec(n) || !o.exec(n) && m.exec(n) || [];
            if (k[1]) {
                k[1] = k[1].replace(/\s/g, "_")
            }
            return {
                platform: k[1] || "",
                tablet: l[1] || ""
            }
        };
        i.jPlayer.browser = {};
        i.jPlayer.platform = {};
        var h = i.jPlayer.uaBrowser(navigator.userAgent);
        if (h.browser) {
            i.jPlayer.browser[h.browser] = true;
            i.jPlayer.browser.version = h.version
        }
        var e = i.jPlayer.uaPlatform(navigator.userAgent);
        if (e.platform) {
            i.jPlayer.platform[e.platform] = true;
            i.jPlayer.platform.mobile = !e.tablet;
            i.jPlayer.platform.tablet = !!e.tablet
        }
        i.jPlayer.getDocMode = function() {
            var k;
            if (i.jPlayer.browser.msie) {
                if (document.documentMode) {
                    k = document.documentMode
                } else {
                    k = 5;
                    if (document.compatMode) {
                        if (document.compatMode === "CSS1Compat") {
                            k = 7
                        }
                    }
                }
            }
            return k
        };
        i.jPlayer.browser.documentMode = i.jPlayer.getDocMode();
        i.jPlayer.nativeFeatures = {
            init: function() {
                var o = document,
                q = o.createElement("video"),
                t = {
                    w3c: ["fullscreenEnabled", "fullscreenElement", "requestFullscreen", "exitFullscreen", "fullscreenchange", "fullscreenerror"],
                    moz: ["mozFullScreenEnabled", "mozFullScreenElement", "mozRequestFullScreen", "mozCancelFullScreen", "mozfullscreenchange", "mozfullscreenerror"],
                    webkit: ["", "webkitCurrentFullScreenElement", "webkitRequestFullScreen", "webkitCancelFullScreen", "webkitfullscreenchange", ""],
                    webkitVideo: ["webkitSupportsFullscreen", "webkitDisplayingFullscreen", "webkitEnterFullscreen", "webkitExitFullscreen", "", ""]
                },
                r = ["w3c", "moz", "webkit", "webkitVideo"],
                m,
                l,
                p;
                this.fullscreen = m = {
                    support: {
                        w3c: !!o[t.w3c[0]],
                        moz: !!o[t.moz[0]],
                        webkit: typeof o[t.webkit[3]] === "function",
                        webkitVideo: typeof q[t.webkitVideo[2]] === "function"
                    },
                    used: {}
                };
                for (l = 0, p = r.length; l < p; l++) {
                    var k = r[l];
                    if (m.support[k]) {
                        m.spec = k;
                        m.used[k] = true;
                        break
                    }
                }
                if (m.spec) {
                    var u = t[m.spec];
                    m.api = {
                        fullscreenEnabled: true,
                        fullscreenElement: function(n) {
                            n = n ? n: o;
                            return n[u[1]]
                        },
                        requestFullscreen: function(n) {
                            return n[u[2]]()
                        },
                        exitFullscreen: function(n) {
                            n = n ? n: o;
                            return n[u[3]]()
                        }
                    };
                    m.event = {
                        fullscreenchange: u[4],
                        fullscreenerror: u[5]
                    }
                } else {
                    m.api = {
                        fullscreenEnabled: false,
                        fullscreenElement: function() {
                            return null
                        },
                        requestFullscreen: function() {},
                        exitFullscreen: function() {}
                    };
                    m.event = {}
                }
            }
        };
        i.jPlayer.nativeFeatures.init();
        i.jPlayer.focus = null;
        i.jPlayer.keyIgnoreElementNames = "INPUT TEXTAREA";
        var g = function(l) {
            var m = i.jPlayer.focus,
            k;
            if (m) {
                i.each(i.jPlayer.keyIgnoreElementNames.split(/\s+/g),
                function(o, n) {
                    if (l.target.nodeName.toUpperCase() === n.toUpperCase()) {
                        k = true;
                        return false
                    }
                });
                if (!k) {
                    i.each(m.options.keyBindings,
                    function(n, o) {
                        if (o && l.which === o.key && i.isFunction(o.fn)) {
                            l.preventDefault();
                            o.fn(m);
                            return false
                        }
                    })
                }
            }
        };
        i.jPlayer.keys = function(k) {
            var l = "keydown.jPlayer";
            i(document.documentElement).unbind(l);
            if (k) {
                i(document.documentElement).bind(l, g)
            }
        };
        i.jPlayer.keys(true);
        i.jPlayer.prototype = {
            count: 0,
            version: {
                script: "2.4.0",
                needFlash: "2.4.0",
                flash: "unknown"
            },
            options: {
                swfPath: "js",
                solution: "html, flash",
                supplied: "mp3",
                preload: "metadata",
                volume: 0.8,
                muted: false,
                wmode: "opaque",
                backgroundColor: "#000000",
                cssSelectorAncestor: "#jp_container_1",
                cssSelector: {
                    videoPlay: ".jp-video-play",
                    play: ".jp-play",
                    pause: ".jp-pause",
                    stop: ".jp-stop",
                    seekBar: ".jp-seek-bar",
                    playBar: ".jp-play-bar",
                    mute: ".jp-mute",
                    unmute: ".jp-unmute",
                    volumeBar: ".jp-volume-bar",
                    volumeBarValue: ".jp-volume-bar-value",
                    volumeMax: ".jp-volume-max",
                    currentTime: ".jp-current-time",
                    duration: ".jp-duration",
                    fullScreen: ".jp-full-screen",
                    restoreScreen: ".jp-restore-screen",
                    repeat: ".jp-repeat",
                    repeatOff: ".jp-repeat-off",
                    gui: ".jp-gui",
                    noSolution: ".jp-no-solution"
                },
                smoothPlayBar: false,
                fullScreen: false,
                fullWindow: false,
                autohide: {
                    restored: false,
                    full: true,
                    fadeIn: 200,
                    fadeOut: 600,
                    hold: 1000
                },
                loop: false,
                repeat: function(k) {
                    if (k.jPlayer.options.loop) {
                        i(this).unbind(".jPlayerRepeat").bind(i.jPlayer.event.ended + ".jPlayer.jPlayerRepeat",
                        function() {
                            i(this).jPlayer("play")
                        })
                    } else {
                        i(this).unbind(".jPlayerRepeat")
                    }
                },
                nativeVideoControls: {},
                noFullWindow: {
                    msie: /msie [0-6]\./,
                    ipad: /ipad.*?os [0-4]\./,
                    iphone: /iphone/,
                    ipod: /ipod/,
                    android_pad: /android [0-3]\.(?!.*?mobile)/,
                    android_phone: /android.*?mobile/,
                    blackberry: /blackberry/,
                    windows_ce: /windows ce/,
                    iemobile: /iemobile/,
                    webos: /webos/
                },
                noVolume: {
                    ipad: /ipad/,
                    iphone: /iphone/,
                    ipod: /ipod/,
                    android_pad: /android(?!.*?mobile)/,
                    android_phone: /android.*?mobile/,
                    blackberry: /blackberry/,
                    windows_ce: /windows ce/,
                    iemobile: /iemobile/,
                    webos: /webos/,
                    playbook: /playbook/
                },
                timeFormat: {},
                keyEnabled: false,
                audioFullScreen: false,
                keyBindings: {
                    play: {
                        key: 32,
                        fn: function(k) {
                            if (k.status.paused) {
                                k.play()
                            } else {
                                k.pause()
                            }
                        }
                    },
                    fullScreen: {
                        key: 13,
                        fn: function(k) {
                            if (k.status.video || k.options.audioFullScreen) {
                                k._setOption("fullScreen", !k.options.fullScreen)
                            }
                        }
                    },
                    muted: {
                        key: 8,
                        fn: function(k) {
                            k._muted(!k.options.muted)
                        }
                    },
                    volumeUp: {
                        key: 38,
                        fn: function(k) {
                            k.volume(k.options.volume + 0.1)
                        }
                    },
                    volumeDown: {
                        key: 40,
                        fn: function(k) {
                            k.volume(k.options.volume - 0.1)
                        }
                    }
                },
                verticalVolume: false,
                idPrefix: "jp",
                noConflict: "jQuery",
                emulateHtml: false,
                errorAlerts: false,
                warningAlerts: false
            },
            optionsAudio: {
                size: {
                    width: "0px",
                    height: "0px",
                    cssClass: ""
                },
                sizeFull: {
                    width: "0px",
                    height: "0px",
                    cssClass: ""
                }
            },
            optionsVideo: {
                size: {
                    width: "480px",
                    height: "270px",
                    cssClass: "jp-video-270p"
                },
                sizeFull: {
                    width: "100%",
                    height: "100%",
                    cssClass: "jp-video-full"
                }
            },
            instances: {},
            status: {
                src: "",
                media: {},
                paused: true,
                format: {},
                formatType: "",
                waitForPlay: true,
                waitForLoad: true,
                srcSet: false,
                video: false,
                seekPercent: 0,
                currentPercentRelative: 0,
                currentPercentAbsolute: 0,
                currentTime: 0,
                duration: 0,
                videoWidth: 0,
                videoHeight: 0,
                readyState: 0,
                networkState: 0,
                playbackRate: 1,
                ended: 0
            },
            internal: {
                ready: false
            },
            solution: {
                html: true,
                flash: true
            },
            format: {
                mp3: {
                    codec: 'audio/mpeg; codecs="mp3"',
                    flashCanPlay: true,
                    media: "audio"
                },
                m4a: {
                    codec: 'audio/mp4; codecs="mp4a.40.2"',
                    flashCanPlay: true,
                    media: "audio"
                },
                oga: {
                    codec: 'audio/ogg; codecs="vorbis"',
                    flashCanPlay: false,
                    media: "audio"
                },
                wav: {
                    codec: 'audio/wav; codecs="1"',
                    flashCanPlay: false,
                    media: "audio"
                },
                webma: {
                    codec: 'audio/webm; codecs="vorbis"',
                    flashCanPlay: false,
                    media: "audio"
                },
                fla: {
                    codec: "audio/x-flv",
                    flashCanPlay: true,
                    media: "audio"
                },
                rtmpa: {
                    codec: 'audio/rtmp; codecs="rtmp"',
                    flashCanPlay: true,
                    media: "audio"
                },
                m4v: {
                    codec: 'video/mp4; codecs="avc1.42E01E, mp4a.40.2"',
                    flashCanPlay: true,
                    media: "video"
                },
                ogv: {
                    codec: 'video/ogg; codecs="theora, vorbis"',
                    flashCanPlay: false,
                    media: "video"
                },
                webmv: {
                    codec: 'video/webm; codecs="vorbis, vp8"',
                    flashCanPlay: false,
                    media: "video"
                },
                flv: {
                    codec: "video/x-flv",
                    flashCanPlay: true,
                    media: "video"
                },
                rtmpv: {
                    codec: 'video/rtmp; codecs="rtmp"',
                    flashCanPlay: true,
                    media: "video"
                }
            },
            _init: function() {
                var l = this;
                this.element.empty();
                this.status = i.extend({},
                this.status);
                this.internal = i.extend({},
                this.internal);
                this.options.timeFormat = i.extend({},
                i.jPlayer.timeFormat, this.options.timeFormat);
                this.internal.cmdsIgnored = i.jPlayer.platform.ipad || i.jPlayer.platform.iphone || i.jPlayer.platform.ipod;
                this.internal.domNode = this.element.get(0);
                if (this.options.keyEnabled && !i.jPlayer.focus) {
                    i.jPlayer.focus = this
                }
                this.formats = [];
                this.solutions = [];
                this.require = {};
                this.htmlElement = {};
                this.html = {};
                this.html.audio = {};
                this.html.video = {};
                this.flash = {};
                this.css = {};
                this.css.cs = {};
                this.css.jq = {};
                this.ancestorJq = [];
                this.options.volume = this._limitValue(this.options.volume, 0, 1);
                i.each(this.options.supplied.toLowerCase().split(","),
                function(u, r) {
                    var s = r.replace(/^\s+|\s+$/g, "");
                    if (l.format[s]) {
                        var t = false;
                        i.each(l.formats,
                        function(w, v) {
                            if (s === v) {
                                t = true;
                                return false
                            }
                        });
                        if (!t) {
                            l.formats.push(s)
                        }
                    }
                });
                i.each(this.options.solution.toLowerCase().split(","),
                function(u, s) {
                    var r = s.replace(/^\s+|\s+$/g, "");
                    if (l.solution[r]) {
                        var t = false;
                        i.each(l.solutions,
                        function(w, v) {
                            if (r === v) {
                                t = true;
                                return false
                            }
                        });
                        if (!t) {
                            l.solutions.push(r)
                        }
                    }
                });
                this.internal.instance = "jp_" + this.count;
                this.instances[this.internal.instance] = this.element;
                if (!this.element.attr("id")) {
                    this.element.attr("id", this.options.idPrefix + "_jplayer_" + this.count)
                }
                this.internal.self = i.extend({},
                {
                    id: this.element.attr("id"),
                    jq: this.element
                });
                this.internal.audio = i.extend({},
                {
                    id: this.options.idPrefix + "_audio_" + this.count,
                    jq: j
                });
                this.internal.video = i.extend({},
                {
                    id: this.options.idPrefix + "_video_" + this.count,
                    jq: j
                });
                this.internal.flash = i.extend({},
                {
                    id: this.options.idPrefix + "_flash_" + this.count,
                    jq: j,
                    swf: this.options.swfPath + (this.options.swfPath.toLowerCase().slice( - 4) !== ".swf" ? (this.options.swfPath && this.options.swfPath.slice( - 1) !== "/" ? "/": "") + "Jplayer.swf": "")
                });
                this.internal.poster = i.extend({},
                {
                    id: this.options.idPrefix + "_poster_" + this.count,
                    jq: j
                });
                i.each(i.jPlayer.event,
                function(r, s) {
                    if (l.options[r] !== j) {
                        l.element.bind(s + ".jPlayer", l.options[r]);
                        l.options[r] = j
                    }
                });
                this.require.audio = false;
                this.require.video = false;
                i.each(this.formats,
                function(r, s) {
                    l.require[l.format[s].media] = true
                });
                if (this.require.video) {
                    this.options = i.extend(true, {},
                    this.optionsVideo, this.options)
                } else {
                    this.options = i.extend(true, {},
                    this.optionsAudio, this.options)
                }
                this._setSize();
                this.status.nativeVideoControls = this._uaBlocklist(this.options.nativeVideoControls);
                this.status.noFullWindow = this._uaBlocklist(this.options.noFullWindow);
                this.status.noVolume = this._uaBlocklist(this.options.noVolume);
                if (i.jPlayer.nativeFeatures.fullscreen.api.fullscreenEnabled) {
                    this._fullscreenAddEventListeners()
                }
                this._restrictNativeVideoControls();
                this.htmlElement.poster = document.createElement("img");
                this.htmlElement.poster.id = this.internal.poster.id;
                this.htmlElement.poster.onload = function() {
                    if (!l.status.video || l.status.waitForPlay) {
                        l.internal.poster.jq.show()
                    }
                };
                this.element.append(this.htmlElement.poster);
                this.internal.poster.jq = i("#" + this.internal.poster.id);
                this.internal.poster.jq.css({
                    width: this.status.width,
                    height: this.status.height
                });
                this.internal.poster.jq.hide();
                this.internal.poster.jq.bind("click.jPlayer",
                function() {
                    l._trigger(i.jPlayer.event.click)
                });
                this.html.audio.available = false;
                if (this.require.audio) {
                    this.htmlElement.audio = document.createElement("audio");
                    this.htmlElement.audio.id = this.internal.audio.id;
                    this.html.audio.available = !!this.htmlElement.audio.canPlayType && this._testCanPlayType(this.htmlElement.audio)
                }
                this.html.video.available = false;
                if (this.require.video) {
                    this.htmlElement.video = document.createElement("video");
                    this.htmlElement.video.id = this.internal.video.id;
                    this.html.video.available = !!this.htmlElement.video.canPlayType && this._testCanPlayType(this.htmlElement.video)
                }
                this.flash.available = this._checkForFlash(10.1);
                this.html.canPlay = {};
                this.flash.canPlay = {};
                i.each(this.formats,
                function(r, s) {
                    l.html.canPlay[s] = l.html[l.format[s].media].available && "" !== l.htmlElement[l.format[s].media].canPlayType(l.format[s].codec);
                    l.flash.canPlay[s] = l.format[s].flashCanPlay && l.flash.available
                });
                this.html.desired = false;
                this.flash.desired = false;
                i.each(this.solutions,
                function(t, r) {
                    if (t === 0) {
                        l[r].desired = true
                    } else {
                        var u = false;
                        var s = false;
                        i.each(l.formats,
                        function(v, w) {
                            if (l[l.solutions[0]].canPlay[w]) {
                                if (l.format[w].media === "video") {
                                    s = true
                                } else {
                                    u = true
                                }
                            }
                        });
                        l[r].desired = (l.require.audio && !u) || (l.require.video && !s)
                    }
                });
                this.html.support = {};
                this.flash.support = {};
                i.each(this.formats,
                function(r, s) {
                    l.html.support[s] = l.html.canPlay[s] && l.html.desired;
                    l.flash.support[s] = l.flash.canPlay[s] && l.flash.desired
                });
                this.html.used = false;
                this.flash.used = false;
                i.each(this.solutions,
                function(s, r) {
                    i.each(l.formats,
                    function(t, u) {
                        if (l[r].support[u]) {
                            l[r].used = true;
                            return false
                        }
                    })
                });
                this._resetActive();
                this._resetGate();
                this._cssSelectorAncestor(this.options.cssSelectorAncestor);
                if (! (this.html.used || this.flash.used)) {
                    this._error({
                        type: i.jPlayer.error.NO_SOLUTION,
                        context: "{solution:'" + this.options.solution + "', supplied:'" + this.options.supplied + "'}",
                        message: i.jPlayer.errorMsg.NO_SOLUTION,
                        hint: i.jPlayer.errorHint.NO_SOLUTION
                    });
                    if (this.css.jq.noSolution.length) {
                        this.css.jq.noSolution.show()
                    }
                } else {
                    if (this.css.jq.noSolution.length) {
                        this.css.jq.noSolution.hide()
                    }
                }
                if (this.flash.used) {
                    var o, p = "jQuery=" + encodeURI(this.options.noConflict) + "&id=" + encodeURI(this.internal.self.id) + "&vol=" + this.options.volume + "&muted=" + this.options.muted;
                    if (i.jPlayer.browser.msie && (Number(i.jPlayer.browser.version) < 9 || i.jPlayer.browser.documentMode < 9)) {
                        var k = '<object id="' + this.internal.flash.id + '" classid="clsid:d27cdb6e-ae6d-11cf-96b8-444553540000" width="0" height="0" tabindex="-1"></object>';
                        var n = ['<param name="movie" value="' + this.internal.flash.swf + '" />', '<param name="FlashVars" value="' + p + '" />', '<param name="allowScriptAccess" value="always" />', '<param name="bgcolor" value="' + this.options.backgroundColor + '" />', '<param name="wmode" value="' + this.options.wmode + '" />'];
                        o = document.createElement(k);
                        for (var m = 0; m < n.length; m++) {
                            o.appendChild(document.createElement(n[m]))
                        }
                    } else {
                        var q = function(s, u, r) {
                            var t = document.createElement("param");
                            t.setAttribute("name", u);
                            t.setAttribute("value", r);
                            s.appendChild(t)
                        };
                        o = document.createElement("object");
                        o.setAttribute("id", this.internal.flash.id);
                        o.setAttribute("name", this.internal.flash.id);
                        o.setAttribute("data", this.internal.flash.swf);
                        o.setAttribute("type", "application/x-shockwave-flash");
                        o.setAttribute("width", "1");
                        o.setAttribute("height", "1");
                        o.setAttribute("tabindex", "-1");
                        q(o, "flashvars", p);
                        q(o, "allowscriptaccess", "always");
                        q(o, "bgcolor", this.options.backgroundColor);
                        q(o, "wmode", this.options.wmode)
                    }
                    this.element.append(o);
                    this.internal.flash.jq = i(o)
                }
                if (this.html.used) {
                    if (this.html.audio.available) {
                        this._addHtmlEventListeners(this.htmlElement.audio, this.html.audio);
                        this.element.append(this.htmlElement.audio);
                        this.internal.audio.jq = i("#" + this.internal.audio.id)
                    }
                    if (this.html.video.available) {
                        this._addHtmlEventListeners(this.htmlElement.video, this.html.video);
                        this.element.append(this.htmlElement.video);
                        this.internal.video.jq = i("#" + this.internal.video.id);
                        if (this.status.nativeVideoControls) {
                            this.internal.video.jq.css({
                                width: this.status.width,
                                height: this.status.height
                            })
                        } else {
                            this.internal.video.jq.css({
                                width: "0px",
                                height: "0px"
                            })
                        }
                        this.internal.video.jq.bind("click.jPlayer",
                        function() {
                            l._trigger(i.jPlayer.event.click)
                        })
                    }
                }
                if (this.options.emulateHtml) {
                    this._emulateHtmlBridge()
                }
                if (this.html.used && !this.flash.used) {
                    setTimeout(function() {
                        l.internal.ready = true;
                        l.version.flash = "n/a";
                        l._trigger(i.jPlayer.event.repeat);
                        l._trigger(i.jPlayer.event.ready)
                    },
                    100)
                }
                this._updateNativeVideoControls();
                if (this.css.jq.videoPlay.length) {
                    this.css.jq.videoPlay.hide()
                }
                i.jPlayer.prototype.count++
            },
            destroy: function() {
                this.clearMedia();
                this._removeUiClass();
                if (this.css.jq.currentTime.length) {
                    this.css.jq.currentTime.text("")
                }
                if (this.css.jq.duration.length) {
                    this.css.jq.duration.text("")
                }
                i.each(this.css.jq,
                function(k, l) {
                    if (l.length) {
                        l.unbind(".jPlayer")
                    }
                });
                this.internal.poster.jq.unbind(".jPlayer");
                if (this.internal.video.jq) {
                    this.internal.video.jq.unbind(".jPlayer")
                }
                this._fullscreenRemoveEventListeners();
                if (this === i.jPlayer.focus) {
                    i.jPlayer.focus = null
                }
                if (this.options.emulateHtml) {
                    this._destroyHtmlBridge()
                }
                this.element.removeData("jPlayer");
                this.element.unbind(".jPlayer");
                this.element.empty();
                delete this.instances[this.internal.instance]
            },
            enable: function() {},
            disable: function() {},
            _testCanPlayType: function(l) {
                try {
                    l.canPlayType(this.format.mp3.codec);
                    return true
                } catch(k) {
                    return false
                }
            },
            _uaBlocklist: function(l) {
                var k = navigator.userAgent.toLowerCase(),
                m = false;
                i.each(l,
                function(o, n) {
                    if (n && n.test(k)) {
                        m = true;
                        return false
                    }
                });
                return m
            },
            _restrictNativeVideoControls: function() {
                if (this.require.audio) {
                    if (this.status.nativeVideoControls) {
                        this.status.nativeVideoControls = false;
                        this.status.noFullWindow = true
                    }
                }
            },
            _updateNativeVideoControls: function() {
                if (this.html.video.available && this.html.used) {
                    this.htmlElement.video.controls = this.status.nativeVideoControls;
                    this._updateAutohide();
                    if (this.status.nativeVideoControls && this.require.video) {
                        this.internal.poster.jq.hide();
                        this.internal.video.jq.css({
                            width: this.status.width,
                            height: this.status.height
                        })
                    } else {
                        if (this.status.waitForPlay && this.status.video) {
                            this.internal.poster.jq.show();
                            this.internal.video.jq.css({
                                width: "0px",
                                height: "0px"
                            })
                        }
                    }
                }
            },
            _addHtmlEventListeners: function(k, m) {
                var l = this;
                k.preload = this.options.preload;
                k.muted = this.options.muted;
                k.volume = this.options.volume;
                k.addEventListener("progress",
                function() {
                    if (m.gate) {
                        if (l.internal.cmdsIgnored && this.readyState > 0) {
                            l.internal.cmdsIgnored = false
                        }
                        l._getHtmlStatus(k);
                        l._updateInterface();
                        l._trigger(i.jPlayer.event.progress)
                    }
                },
                false);
                k.addEventListener("timeupdate",
                function() {
                    if (m.gate) {
                        l._getHtmlStatus(k);
                        l._updateInterface();
                        l._trigger(i.jPlayer.event.timeupdate)
                    }
                },
                false);
                k.addEventListener("durationchange",
                function() {
                    if (m.gate) {
                        l._getHtmlStatus(k);
                        l._updateInterface();
                        l._trigger(i.jPlayer.event.durationchange)
                    }
                },
                false);
                k.addEventListener("play",
                function() {
                    if (m.gate) {
                        l._updateButtons(true);
                        l._html_checkWaitForPlay();
                        l._trigger(i.jPlayer.event.play)
                    }
                },
                false);
                k.addEventListener("playing",
                function() {
                    if (m.gate) {
                        l._updateButtons(true);
                        l._seeked();
                        l._trigger(i.jPlayer.event.playing)
                    }
                },
                false);
                k.addEventListener("pause",
                function() {
                    if (m.gate) {
                        l._updateButtons(false);
                        l._trigger(i.jPlayer.event.pause)
                    }
                },
                false);
                k.addEventListener("waiting",
                function() {
                    if (m.gate) {
                        l._seeking();
                        l._trigger(i.jPlayer.event.waiting)
                    }
                },
                false);
                k.addEventListener("seeking",
                function() {
                    if (m.gate) {
                        l._seeking();
                        l._trigger(i.jPlayer.event.seeking)
                    }
                },
                false);
                k.addEventListener("seeked",
                function() {
                    if (m.gate) {
                        l._seeked();
                        l._trigger(i.jPlayer.event.seeked)
                    }
                },
                false);
                k.addEventListener("volumechange",
                function() {
                    if (m.gate) {
                        l.options.volume = k.volume;
                        l.options.muted = k.muted;
                        l._updateMute();
                        l._updateVolume();
                        l._trigger(i.jPlayer.event.volumechange)
                    }
                },
                false);
                k.addEventListener("suspend",
                function() {
                    if (m.gate) {
                        l._seeked();
                        l._trigger(i.jPlayer.event.suspend)
                    }
                },
                false);
                k.addEventListener("ended",
                function() {
                    if (m.gate) {
                        if (!i.jPlayer.browser.webkit) {
                            l.htmlElement.media.currentTime = 0
                        }
                        l.htmlElement.media.pause();
                        l._updateButtons(false);
                        l._getHtmlStatus(k, true);
                        l._updateInterface();
                        l._trigger(i.jPlayer.event.ended)
                    }
                },
                false);
                k.addEventListener("error",
                function() {
                    if (m.gate) {
                        l._updateButtons(false);
                        l._seeked();
                        if (l.status.srcSet) {
                            clearTimeout(l.internal.htmlDlyCmdId);
                            l.status.waitForLoad = true;
                            l.status.waitForPlay = true;
                            if (l.status.video && !l.status.nativeVideoControls) {
                                l.internal.video.jq.css({
                                    width: "0px",
                                    height: "0px"
                                })
                            }
                            if (l._validString(l.status.media.poster) && !l.status.nativeVideoControls) {
                                l.internal.poster.jq.show()
                            }
                            if (l.css.jq.videoPlay.length) {
                                l.css.jq.videoPlay.show()
                            }
                            l._error({
                                type: i.jPlayer.error.URL,
                                context: l.status.src,
                                message: i.jPlayer.errorMsg.URL,
                                hint: i.jPlayer.errorHint.URL
                            })
                        }
                    }
                },
                false);
                i.each(i.jPlayer.htmlEvent,
                function(o, n) {
                    k.addEventListener(this,
                    function() {
                        if (m.gate) {
                            l._trigger(i.jPlayer.event[n])
                        }
                    },
                    false)
                })
            },
            _getHtmlStatus: function(o, l) {
                var k = 0,
                m = 0,
                n = 0,
                p = 0;
                if (isFinite(o.duration)) {
                    this.status.duration = o.duration
                }
                k = o.currentTime;
                m = (this.status.duration > 0) ? 100 * k / this.status.duration: 0;
                if ((typeof o.seekable === "object") && (o.seekable.length > 0)) {
                    n = (this.status.duration > 0) ? 100 * o.seekable.end(o.seekable.length - 1) / this.status.duration: 100;
                    p = (this.status.duration > 0) ? 100 * o.currentTime / o.seekable.end(o.seekable.length - 1) : 0
                } else {
                    n = 100;
                    p = m
                }
                if (l) {
                    k = 0;
                    p = 0;
                    m = 0
                }
                this.status.seekPercent = n;
                this.status.currentPercentRelative = p;
                this.status.currentPercentAbsolute = m;
                this.status.currentTime = k;
                this.status.videoWidth = o.videoWidth;
                this.status.videoHeight = o.videoHeight;
                this.status.readyState = o.readyState;
                this.status.networkState = o.networkState;
                this.status.playbackRate = o.playbackRate;
                this.status.ended = o.ended
            },
            _resetStatus: function() {
                this.status = i.extend({},
                this.status, i.jPlayer.prototype.status)
            },
            _trigger: function(l, k, m) {
                var n = i.Event(l);
                n.jPlayer = {};
                n.jPlayer.version = i.extend({},
                this.version);
                n.jPlayer.options = i.extend(true, {},
                this.options);
                n.jPlayer.status = i.extend(true, {},
                this.status);
                n.jPlayer.html = i.extend(true, {},
                this.html);
                n.jPlayer.flash = i.extend(true, {},
                this.flash);
                if (k) {
                    n.jPlayer.error = i.extend({},
                    k)
                }
                if (m) {
                    n.jPlayer.warning = i.extend({},
                    m)
                }
                this.element.trigger(n)
            },
            jPlayerFlashEvent: function(m, k) {
                if (m === i.jPlayer.event.ready) {
                    if (!this.internal.ready) {
                        this.internal.ready = true;
                        this.internal.flash.jq.css({
                            width: "0px",
                            height: "0px"
                        });
                        this.version.flash = k.version;
                        if (this.version.needFlash !== this.version.flash) {
                            this._error({
                                type: i.jPlayer.error.VERSION,
                                context: this.version.flash,
                                message: i.jPlayer.errorMsg.VERSION + this.version.flash,
                                hint: i.jPlayer.errorHint.VERSION
                            })
                        }
                        this._trigger(i.jPlayer.event.repeat);
                        this._trigger(m)
                    } else {
                        if (this.flash.gate) {
                            if (this.status.srcSet) {
                                var n = this.status.currentTime,
                                l = this.status.paused;
                                this.setMedia(this.status.media);
                                if (n > 0) {
                                    if (l) {
                                        this.pause(n)
                                    } else {
                                        this.play(n)
                                    }
                                }
                            }
                            this._trigger(i.jPlayer.event.flashreset)
                        }
                    }
                }
                if (this.flash.gate) {
                    switch (m) {
                    case i.jPlayer.event.progress:
                        this._getFlashStatus(k);
                        this._updateInterface();
                        this._trigger(m);
                        break;
                    case i.jPlayer.event.timeupdate:
                        this._getFlashStatus(k);
                        this._updateInterface();
                        this._trigger(m);
                        break;
                    case i.jPlayer.event.play:
                        this._seeked();
                        this._updateButtons(true);
                        this._trigger(m);
                        break;
                    case i.jPlayer.event.pause:
                        this._updateButtons(false);
                        this._trigger(m);
                        break;
                    case i.jPlayer.event.ended:
                        this._updateButtons(false);
                        this._trigger(m);
                        break;
                    case i.jPlayer.event.click:
                        this._trigger(m);
                        break;
                    case i.jPlayer.event.error:
                        this.status.waitForLoad = true;
                        this.status.waitForPlay = true;
                        if (this.status.video) {
                            this.internal.flash.jq.css({
                                width: "0px",
                                height: "0px"
                            })
                        }
                        if (this._validString(this.status.media.poster)) {
                            this.internal.poster.jq.show()
                        }
                        if (this.css.jq.videoPlay.length && this.status.video) {
                            this.css.jq.videoPlay.show()
                        }
                        if (this.status.video) {
                            this._flash_setVideo(this.status.media)
                        } else {
                            this._flash_setAudio(this.status.media)
                        }
                        this._updateButtons(false);
                        this._error({
                            type: i.jPlayer.error.URL,
                            context: k.src,
                            message: i.jPlayer.errorMsg.URL,
                            hint: i.jPlayer.errorHint.URL
                        });
                        break;
                    case i.jPlayer.event.seeking:
                        this._seeking();
                        this._trigger(m);
                        break;
                    case i.jPlayer.event.seeked:
                        this._seeked();
                        this._trigger(m);
                        break;
                    case i.jPlayer.event.ready:
                        break;
                    default:
                        this._trigger(m)
                    }
                }
                return false
            },
            _getFlashStatus: function(k) {
                this.status.seekPercent = k.seekPercent;
                this.status.currentPercentRelative = k.currentPercentRelative;
                this.status.currentPercentAbsolute = k.currentPercentAbsolute;
                this.status.currentTime = k.currentTime;
                this.status.duration = k.duration;
                this.status.videoWidth = k.videoWidth;
                this.status.videoHeight = k.videoHeight;
                this.status.readyState = 4;
                this.status.networkState = 0;
                this.status.playbackRate = 1;
                this.status.ended = false
            },
            _updateButtons: function(k) {
                if (k === j) {
                    k = !this.status.paused
                } else {
                    this.status.paused = !k
                }
                if (this.css.jq.play.length && this.css.jq.pause.length) {
                    if (k) {
                        this.css.jq.play.hide();
                        this.css.jq.pause.show()
                    } else {
                        this.css.jq.play.show();
                        this.css.jq.pause.hide()
                    }
                }
                if (this.css.jq.restoreScreen.length && this.css.jq.fullScreen.length) {
                    if (this.status.noFullWindow) {
                        this.css.jq.fullScreen.hide();
                        this.css.jq.restoreScreen.hide()
                    } else {
                        if (this.options.fullWindow) {
                            this.css.jq.fullScreen.hide();
                            this.css.jq.restoreScreen.show()
                        } else {
                            this.css.jq.fullScreen.show();
                            this.css.jq.restoreScreen.hide()
                        }
                    }
                }
                if (this.css.jq.repeat.length && this.css.jq.repeatOff.length) {
                    if (this.options.loop) {
                        this.css.jq.repeat.hide();
                        this.css.jq.repeatOff.show()
                    } else {
                        this.css.jq.repeat.show();
                        this.css.jq.repeatOff.hide()
                    }
                }
            },
            _updateInterface: function() {
                if (this.css.jq.seekBar.length) {
                    this.css.jq.seekBar.width(this.status.seekPercent + "%")
                }
                if (this.css.jq.playBar.length) {
                    if (this.options.smoothPlayBar) {
                        this.css.jq.playBar.stop().animate({
                            width: this.status.currentPercentAbsolute + "%"
                        },
                        250, "linear")
                    } else {
                        this.css.jq.playBar.width(this.status.currentPercentRelative + "%")
                    }
                }
                if (this.css.jq.currentTime.length) {
                    this.css.jq.currentTime.text(this._convertTime(this.status.currentTime))
                }
                if (this.css.jq.duration.length) {
                    this.css.jq.duration.text(this._convertTime(this.status.duration))
                }
            },
            _convertTime: f.prototype.time,
            _seeking: function() {
                if (this.css.jq.seekBar.length) {
                    this.css.jq.seekBar.addClass("jp-seeking-bg")
                }
            },
            _seeked: function() {
                if (this.css.jq.seekBar.length) {
                    this.css.jq.seekBar.removeClass("jp-seeking-bg")
                }
            },
            _resetGate: function() {
                this.html.audio.gate = false;
                this.html.video.gate = false;
                this.flash.gate = false
            },
            _resetActive: function() {
                this.html.active = false;
                this.flash.active = false
            },
            setMedia: function(m) {
                var l = this,
                k = false,
                n = this.status.media.poster !== m.poster;
                this._resetMedia();
                this._resetGate();
                this._resetActive();
                i.each(this.formats,
                function(o, q) {
                    var p = l.format[q].media === "video";
                    i.each(l.solutions,
                    function(s, r) {
                        if (l[r].support[q] && l._validString(m[q])) {
                            var t = r === "html";
                            if (p) {
                                if (t) {
                                    l.html.video.gate = true;
                                    l._html_setVideo(m);
                                    l.html.active = true
                                } else {
                                    l.flash.gate = true;
                                    l._flash_setVideo(m);
                                    l.flash.active = true
                                }
                                if (l.css.jq.videoPlay.length) {
                                    l.css.jq.videoPlay.show()
                                }
                                l.status.video = true
                            } else {
                                if (t) {
                                    l.html.audio.gate = true;
                                    l._html_setAudio(m);
                                    l.html.active = true
                                } else {
                                    l.flash.gate = true;
                                    l._flash_setAudio(m);
                                    l.flash.active = true
                                }
                                if (l.css.jq.videoPlay.length) {
                                    l.css.jq.videoPlay.hide()
                                }
                                l.status.video = false
                            }
                            k = true;
                            return false
                        }
                    });
                    if (k) {
                        return false
                    }
                });
                if (k) {
                    if (! (this.status.nativeVideoControls && this.html.video.gate)) {
                        if (this._validString(m.poster)) {
                            if (n) {
                                this.htmlElement.poster.src = m.poster
                            } else {
                                this.internal.poster.jq.show()
                            }
                        }
                    }
                    this.status.srcSet = true;
                    this.status.media = i.extend({},
                    m);
                    this._updateButtons(false);
                    this._updateInterface()
                } else {
                    this._error({
                        type: i.jPlayer.error.NO_SUPPORT,
                        context: "{supplied:'" + this.options.supplied + "'}",
                        message: i.jPlayer.errorMsg.NO_SUPPORT,
                        hint: i.jPlayer.errorHint.NO_SUPPORT
                    })
                }
            },
            _resetMedia: function() {
                this._resetStatus();
                this._updateButtons(false);
                this._updateInterface();
                this._seeked();
                this.internal.poster.jq.hide();
                clearTimeout(this.internal.htmlDlyCmdId);
                if (this.html.active) {
                    this._html_resetMedia()
                } else {
                    if (this.flash.active) {
                        this._flash_resetMedia()
                    }
                }
            },
            clearMedia: function() {
                this._resetMedia();
                if (this.html.active) {
                    this._html_clearMedia()
                } else {
                    if (this.flash.active) {
                        this._flash_clearMedia()
                    }
                }
                this._resetGate();
                this._resetActive()
            },
            load: function() {
                if (this.status.srcSet) {
                    if (this.html.active) {
                        this._html_load()
                    } else {
                        if (this.flash.active) {
                            this._flash_load()
                        }
                    }
                } else {
                    this._urlNotSetError("load")
                }
            },
            focus: function() {
                if (this.options.keyEnabled) {
                    i.jPlayer.focus = this
                }
            },
            play: function(k) {
                k = (typeof k === "number") ? k: NaN;
                if (this.status.srcSet) {
                    this.focus();
                    if (this.html.active) {
                        this._html_play(k)
                    } else {
                        if (this.flash.active) {
                            this._flash_play(k)
                        }
                    }
                } else {
                    this._urlNotSetError("play")
                }
            },
            videoPlay: function() {
                this.play()
            },
            pause: function(k) {
                k = (typeof k === "number") ? k: NaN;
                if (this.status.srcSet) {
                    if (this.html.active) {
                        this._html_pause(k)
                    } else {
                        if (this.flash.active) {
                            this._flash_pause(k)
                        }
                    }
                } else {
                    this._urlNotSetError("pause")
                }
            },
            pauseOthers: function() {
                var k = this;
                i.each(this.instances,
                function(m, l) {
                    if (k.element !== l) {
                        if (l.data("jPlayer").status.srcSet) {
                            l.jPlayer("pause")
                        }
                    }
                })
            },
            stop: function() {
                if (this.status.srcSet) {
                    if (this.html.active) {
                        this._html_pause(0)
                    } else {
                        if (this.flash.active) {
                            this._flash_pause(0)
                        }
                    }
                } else {
                    this._urlNotSetError("stop")
                }
            },
            playHead: function(k) {
                k = this._limitValue(k, 0, 100);
                if (this.status.srcSet) {
                    if (this.html.active) {
                        this._html_playHead(k)
                    } else {
                        if (this.flash.active) {
                            this._flash_playHead(k)
                        }
                    }
                } else {
                    this._urlNotSetError("playHead")
                }
            },
            _muted: function(k) {
                this.options.muted = k;
                if (this.html.used) {
                    this._html_mute(k)
                }
                if (this.flash.used) {
                    this._flash_mute(k)
                }
                if (!this.html.video.gate && !this.html.audio.gate) {
                    this._updateMute(k);
                    this._updateVolume(this.options.volume);
                    this._trigger(i.jPlayer.event.volumechange)
                }
            },
            mute: function(k) {
                k = k === j ? true: !!k;
                this._muted(k)
            },
            unmute: function(k) {
                k = k === j ? true: !!k;
                this._muted(!k)
            },
            _updateMute: function(k) {
                if (k === j) {
                    k = this.options.muted
                }
                if (this.css.jq.mute.length && this.css.jq.unmute.length) {
                    if (this.status.noVolume) {
                        this.css.jq.mute.hide();
                        this.css.jq.unmute.hide()
                    } else {
                        if (k) {
                            this.css.jq.mute.hide();
                            this.css.jq.unmute.show()
                        } else {
                            this.css.jq.mute.show();
                            this.css.jq.unmute.hide()
                        }
                    }
                }
            },
            volume: function(k) {
                k = this._limitValue(k, 0, 1);
                this.options.volume = k;
                if (this.html.used) {
                    this._html_volume(k)
                }
                if (this.flash.used) {
                    this._flash_volume(k)
                }
                if (!this.html.video.gate && !this.html.audio.gate) {
                    this._updateVolume(k);
                    this._trigger(i.jPlayer.event.volumechange)
                }
            },
            volumeBar: function(o) {
                if (this.css.jq.volumeBar.length) {
                    var n = i(o.currentTarget),
                    p = n.offset(),
                    k = o.pageX - p.left,
                    l = n.width(),
                    q = n.height() - o.pageY + p.top,
                    m = n.height();
                    if (this.options.verticalVolume) {
                        this.volume(q / m)
                    } else {
                        this.volume(k / l)
                    }
                }
                if (this.options.muted) {
                    this._muted(false)
                }
            },
            volumeBarValue: function() {},
            _updateVolume: function(k) {
                if (k === j) {
                    k = this.options.volume
                }
                k = this.options.muted ? 0 : k;
                if (this.status.noVolume) {
                    if (this.css.jq.volumeBar.length) {
                        this.css.jq.volumeBar.hide()
                    }
                    if (this.css.jq.volumeBarValue.length) {
                        this.css.jq.volumeBarValue.hide()
                    }
                    if (this.css.jq.volumeMax.length) {
                        this.css.jq.volumeMax.hide()
                    }
                } else {
                    if (this.css.jq.volumeBar.length) {
                        this.css.jq.volumeBar.show()
                    }
                    if (this.css.jq.volumeBarValue.length) {
                        this.css.jq.volumeBarValue.show();
                        this.css.jq.volumeBarValue[this.options.verticalVolume ? "height": "width"]((k * 100) + "%")
                    }
                    if (this.css.jq.volumeMax.length) {
                        this.css.jq.volumeMax.show()
                    }
                }
            },
            volumeMax: function() {
                this.volume(1);
                if (this.options.muted) {
                    this._muted(false)
                }
            },
            _cssSelectorAncestor: function(l) {
                var k = this;
                this.options.cssSelectorAncestor = l;
                this._removeUiClass();
                this.ancestorJq = l ? i(l) : [];
                if (l && this.ancestorJq.length !== 1) {
                    this._warning({
                        type: i.jPlayer.warning.CSS_SELECTOR_COUNT,
                        context: l,
                        message: i.jPlayer.warningMsg.CSS_SELECTOR_COUNT + this.ancestorJq.length + " found for cssSelectorAncestor.",
                        hint: i.jPlayer.warningHint.CSS_SELECTOR_COUNT
                    })
                }
                this._addUiClass();
                i.each(this.options.cssSelector,
                function(m, n) {
                    k._cssSelector(m, n)
                });
                this._updateInterface();
                this._updateButtons();
                this._updateAutohide();
                this._updateVolume();
                this._updateMute()
            },
            _cssSelector: function(m, n) {
                var k = this;
                if (typeof n === "string") {
                    if (i.jPlayer.prototype.options.cssSelector[m]) {
                        if (this.css.jq[m] && this.css.jq[m].length) {
                            this.css.jq[m].unbind(".jPlayer")
                        }
                        this.options.cssSelector[m] = n;
                        this.css.cs[m] = this.options.cssSelectorAncestor + " " + n;
                        if (n) {
                            this.css.jq[m] = i(this.css.cs[m])
                        } else {
                            this.css.jq[m] = []
                        }
                        if (this.css.jq[m].length) {
                            var l = function(o) {
                                o.preventDefault();
                                k[m](o);
                                i(this).blur()
                            };
                            this.css.jq[m].bind("click.jPlayer", l)
                        }
                        if (n && this.css.jq[m].length !== 1) {
                            this._warning({
                                type: i.jPlayer.warning.CSS_SELECTOR_COUNT,
                                context: this.css.cs[m],
                                message: i.jPlayer.warningMsg.CSS_SELECTOR_COUNT + this.css.jq[m].length + " found for " + m + " method.",
                                hint: i.jPlayer.warningHint.CSS_SELECTOR_COUNT
                            })
                        }
                    } else {
                        this._warning({
                            type: i.jPlayer.warning.CSS_SELECTOR_METHOD,
                            context: m,
                            message: i.jPlayer.warningMsg.CSS_SELECTOR_METHOD,
                            hint: i.jPlayer.warningHint.CSS_SELECTOR_METHOD
                        })
                    }
                } else {
                    this._warning({
                        type: i.jPlayer.warning.CSS_SELECTOR_STRING,
                        context: n,
                        message: i.jPlayer.warningMsg.CSS_SELECTOR_STRING,
                        hint: i.jPlayer.warningHint.CSS_SELECTOR_STRING
                    })
                }
            },
            seekBar: function(o) {
                if (this.css.jq.seekBar.length) {
                    var n = i(o.currentTarget),
                    q = n.offset(),
                    k = o.pageX - q.left,
                    l = n.width(),
                    m = 100 * k / l;
                    this.playHead(m)
                }
            },
            playBar: function() {},
            repeat: function() {
                this._loop(true)
            },
            repeatOff: function() {
                this._loop(false)
            },
            _loop: function(k) {
                if (this.options.loop !== k) {
                    this.options.loop = k;
                    this._updateButtons();
                    this._trigger(i.jPlayer.event.repeat)
                }
            },
            currentTime: function() {},
            duration: function() {},
            gui: function() {},
            noSolution: function() {},
            option: function(o, r) {
                var l = o;
                if (arguments.length === 0) {
                    return i.extend(true, {},
                    this.options)
                }
                if (typeof o === "string") {
                    var q = o.split(".");
                    if (r === j) {
                        var n = i.extend(true, {},
                        this.options);
                        for (var m = 0; m < q.length; m++) {
                            if (n[q[m]] !== j) {
                                n = n[q[m]]
                            } else {
                                this._warning({
                                    type: i.jPlayer.warning.OPTION_KEY,
                                    context: o,
                                    message: i.jPlayer.warningMsg.OPTION_KEY,
                                    hint: i.jPlayer.warningHint.OPTION_KEY
                                });
                                return j
                            }
                        }
                        return n
                    }
                    l = {};
                    var p = l;
                    for (var k = 0; k < q.length; k++) {
                        if (k < q.length - 1) {
                            p[q[k]] = {};
                            p = p[q[k]]
                        } else {
                            p[q[k]] = r
                        }
                    }
                }
                this._setOptions(l);
                return this
            },
            _setOptions: function(l) {
                var k = this;
                i.each(l,
                function(m, n) {
                    k._setOption(m, n)
                });
                return this
            },
            _setOption: function(m, n) {
                var k = this;
                switch (m) {
                case "volume":
                    this.volume(n);
                    break;
                case "muted":
                    this._muted(n);
                    break;
                case "cssSelectorAncestor":
                    this._cssSelectorAncestor(n);
                    break;
                case "cssSelector":
                    i.each(n,
                    function(o, p) {
                        k._cssSelector(o, p)
                    });
                    break;
                case "fullScreen":
                    if (this.options[m] !== n) {
                        var l = i.jPlayer.nativeFeatures.fullscreen.used.webkitVideo;
                        if (!l || l && !this.status.waitForPlay) {
                            if (!l) {
                                this.options[m] = n
                            }
                            if (n) {
                                this._requestFullscreen()
                            } else {
                                this._exitFullscreen()
                            }
                            if (!l) {
                                this._setOption("fullWindow", n)
                            }
                        }
                    }
                    break;
                case "fullWindow":
                    if (this.options[m] !== n) {
                        this._removeUiClass();
                        this.options[m] = n;
                        this._refreshSize()
                    }
                    break;
                case "size":
                    if (!this.options.fullWindow && this.options[m].cssClass !== n.cssClass) {
                        this._removeUiClass()
                    }
                    this.options[m] = i.extend({},
                    this.options[m], n);
                    this._refreshSize();
                    break;
                case "sizeFull":
                    if (this.options.fullWindow && this.options[m].cssClass !== n.cssClass) {
                        this._removeUiClass()
                    }
                    this.options[m] = i.extend({},
                    this.options[m], n);
                    this._refreshSize();
                    break;
                case "autohide":
                    this.options[m] = i.extend({},
                    this.options[m], n);
                    this._updateAutohide();
                    break;
                case "loop":
                    this._loop(n);
                    break;
                case "nativeVideoControls":
                    this.options[m] = i.extend({},
                    this.options[m], n);
                    this.status.nativeVideoControls = this._uaBlocklist(this.options.nativeVideoControls);
                    this._restrictNativeVideoControls();
                    this._updateNativeVideoControls();
                    break;
                case "noFullWindow":
                    this.options[m] = i.extend({},
                    this.options[m], n);
                    this.status.nativeVideoControls = this._uaBlocklist(this.options.nativeVideoControls);
                    this.status.noFullWindow = this._uaBlocklist(this.options.noFullWindow);
                    this._restrictNativeVideoControls();
                    this._updateButtons();
                    break;
                case "noVolume":
                    this.options[m] = i.extend({},
                    this.options[m], n);
                    this.status.noVolume = this._uaBlocklist(this.options.noVolume);
                    this._updateVolume();
                    this._updateMute();
                    break;
                case "emulateHtml":
                    if (this.options[m] !== n) {
                        this.options[m] = n;
                        if (n) {
                            this._emulateHtmlBridge()
                        } else {
                            this._destroyHtmlBridge()
                        }
                    }
                    break;
                case "timeFormat":
                    this.options[m] = i.extend({},
                    this.options[m], n);
                    break;
                case "keyEnabled":
                    this.options[m] = n;
                    if (!n && this === i.jPlayer.focus) {
                        i.jPlayer.focus = null
                    }
                    break;
                case "keyBindings":
                    this.options[m] = i.extend(true, {},
                    this.options[m], n);
                    break;
                case "audioFullScreen":
                    this.options[m] = n;
                    break
                }
                return this
            },
            _refreshSize: function() {
                this._setSize();
                this._addUiClass();
                this._updateSize();
                this._updateButtons();
                this._updateAutohide();
                this._trigger(i.jPlayer.event.resize)
            },
            _setSize: function() {
                if (this.options.fullWindow) {
                    this.status.width = this.options.sizeFull.width;
                    this.status.height = this.options.sizeFull.height;
                    this.status.cssClass = this.options.sizeFull.cssClass
                } else {
                    this.status.width = this.options.size.width;
                    this.status.height = this.options.size.height;
                    this.status.cssClass = this.options.size.cssClass
                }
                this.element.css({
                    width: this.status.width,
                    height: this.status.height
                })
            },
            _addUiClass: function() {
                if (this.ancestorJq.length) {
                    this.ancestorJq.addClass(this.status.cssClass)
                }
            },
            _removeUiClass: function() {
                if (this.ancestorJq.length) {
                    this.ancestorJq.removeClass(this.status.cssClass)
                }
            },
            _updateSize: function() {
                this.internal.poster.jq.css({
                    width: this.status.width,
                    height: this.status.height
                });
                if (!this.status.waitForPlay && this.html.active && this.status.video || this.html.video.available && this.html.used && this.status.nativeVideoControls) {
                    this.internal.video.jq.css({
                        width: this.status.width,
                        height: this.status.height
                    })
                } else {
                    if (!this.status.waitForPlay && this.flash.active && this.status.video) {
                        this.internal.flash.jq.css({
                            width: this.status.width,
                            height: this.status.height
                        })
                    }
                }
            },
            _updateAutohide: function() {
                var k = this,
                o = "mousemove.jPlayer",
                n = ".jPlayerAutohide",
                l = o + n,
                m = function() {
                    k.css.jq.gui.fadeIn(k.options.autohide.fadeIn,
                    function() {
                        clearTimeout(k.internal.autohideId);
                        k.internal.autohideId = setTimeout(function() {
                            k.css.jq.gui.fadeOut(k.options.autohide.fadeOut)
                        },
                        k.options.autohide.hold)
                    })
                };
                if (this.css.jq.gui.length) {
                    this.css.jq.gui.stop(true, true);
                    clearTimeout(this.internal.autohideId);
                    this.element.unbind(n);
                    this.css.jq.gui.unbind(n);
                    if (!this.status.nativeVideoControls) {
                        if (this.options.fullWindow && this.options.autohide.full || !this.options.fullWindow && this.options.autohide.restored) {
                            this.element.bind(l, m);
                            this.css.jq.gui.bind(l, m);
                            this.css.jq.gui.hide()
                        } else {
                            this.css.jq.gui.show()
                        }
                    } else {
                        this.css.jq.gui.hide()
                    }
                }
            },
            fullScreen: function() {
                this._setOption("fullScreen", true)
            },
            restoreScreen: function() {
                this._setOption("fullScreen", false)
            },
            _fullscreenAddEventListeners: function() {
                var l = this,
                k = i.jPlayer.nativeFeatures.fullscreen;
                if (k.api.fullscreenEnabled) {
                    if (k.event.fullscreenchange) {
                        if (typeof this.internal.fullscreenchangeHandler !== "function") {
                            this.internal.fullscreenchangeHandler = function() {
                                l._fullscreenchange()
                            }
                        }
                        document.addEventListener(k.event.fullscreenchange, this.internal.fullscreenchangeHandler, false)
                    }
                }
            },
            _fullscreenRemoveEventListeners: function() {
                var k = i.jPlayer.nativeFeatures.fullscreen;
                if (this.internal.fullscreenchangeHandler) {
                    document.addEventListener(k.event.fullscreenchange, this.internal.fullscreenchangeHandler, false)
                }
            },
            _fullscreenchange: function() {
                if (this.options.fullScreen && !i.jPlayer.nativeFeatures.fullscreen.api.fullscreenElement()) {
                    this._setOption("fullScreen", false)
                }
            },
            _requestFullscreen: function() {
                var l = this.ancestorJq.length ? this.ancestorJq[0] : this.element[0],
                k = i.jPlayer.nativeFeatures.fullscreen;
                if (k.used.webkitVideo) {
                    l = this.htmlElement.video
                }
                if (k.api.fullscreenEnabled) {
                    k.api.requestFullscreen(l)
                }
            },
            _exitFullscreen: function() {
                var k = i.jPlayer.nativeFeatures.fullscreen,
                l;
                if (k.used.webkitVideo) {
                    l = this.htmlElement.video
                }
                if (k.api.fullscreenEnabled) {
                    k.api.exitFullscreen(l)
                }
            },
            _html_initMedia: function(l) {
                var k = i(this.htmlElement.media).empty();
                i.each(l.track || [],
                function(o, n) {
                    var m = document.createElement("track");
                    m.setAttribute("kind", n.kind ? n.kind: "");
                    m.setAttribute("src", n.src ? n.src: "");
                    m.setAttribute("srclang", n.srclang ? n.srclang: "");
                    m.setAttribute("label", n.label ? n.label: "");
                    if (n.def) {
                        m.setAttribute("default", n.def)
                    }
                    k.append(m)
                });
                this.htmlElement.media.src = this.status.src;
                if (this.options.preload !== "none") {
                    this._html_load()
                }
                this._trigger(i.jPlayer.event.timeupdate)
            },
            _html_setFormat: function(l) {
                var k = this;
                i.each(this.formats,
                function(m, n) {
                    if (k.html.support[n] && l[n]) {
                        k.status.src = l[n];
                        k.status.format[n] = true;
                        k.status.formatType = n;
                        return false
                    }
                })
            },
            _html_setAudio: function(k) {
                this._html_setFormat(k);
                this.htmlElement.media = this.htmlElement.audio;
                this._html_initMedia(k)
            },
            _html_setVideo: function(k) {
                this._html_setFormat(k);
                if (this.status.nativeVideoControls) {
                    this.htmlElement.video.poster = this._validString(k.poster) ? k.poster: ""
                }
                this.htmlElement.media = this.htmlElement.video;
                this._html_initMedia(k)
            },
            _html_resetMedia: function() {
                if (this.htmlElement.media) {
                    if (this.htmlElement.media.id === this.internal.video.id && !this.status.nativeVideoControls) {
                        this.internal.video.jq.css({
                            width: "0px",
                            height: "0px"
                        })
                    }
                    this.htmlElement.media.pause()
                }
            },
            _html_clearMedia: function() {
                if (this.htmlElement.media) {
                    this.htmlElement.media.src = "about:blank";
                    this.htmlElement.media.load()
                }
            },
            _html_load: function() {
                if (this.status.waitForLoad) {
                    this.status.waitForLoad = false;
                    this.htmlElement.media.load()
                }
                clearTimeout(this.internal.htmlDlyCmdId)
            },
            _html_play: function(n) {
                var k = this,
                m = this.htmlElement.media;
                this._html_load();
                if (!isNaN(n)) {
                    if (this.internal.cmdsIgnored) {
                        m.play()
                    }
                    try {
                        if (!m.seekable || typeof m.seekable === "object" && m.seekable.length > 0) {
                            m.currentTime = n;
                            m.play()
                        } else {
                            throw 1
                        }
                    } catch(l) {
                        this.internal.htmlDlyCmdId = setTimeout(function() {
                            k.play(n)
                        },
                        250);
                        return
                    }
                } else {
                    m.play()
                }
                this._html_checkWaitForPlay()
            },
            _html_pause: function(n) {
                var k = this,
                m = this.htmlElement.media;
                if (n > 0) {
                    this._html_load()
                } else {
                    clearTimeout(this.internal.htmlDlyCmdId)
                }
                m.pause();
                if (!isNaN(n)) {
                    try {
                        if (!m.seekable || typeof m.seekable === "object" && m.seekable.length > 0) {
                            m.currentTime = n
                        } else {
                            throw 1
                        }
                    } catch(l) {
                        this.internal.htmlDlyCmdId = setTimeout(function() {
                            k.pause(n)
                        },
                        250);
                        return
                    }
                }
                if (n > 0) {
                    this._html_checkWaitForPlay()
                }
            },
            _html_playHead: function(m) {
                var k = this,
                n = this.htmlElement.media;
                this._html_load();
                try {
                    if (typeof n.seekable === "object" && n.seekable.length > 0) {
                        n.currentTime = m * n.seekable.end(n.seekable.length - 1) / 100
                    } else {
                        if (n.duration > 0 && !isNaN(n.duration)) {
                            n.currentTime = m * n.duration / 100
                        } else {
                            throw "e"
                        }
                    }
                } catch(l) {
                    this.internal.htmlDlyCmdId = setTimeout(function() {
                        k.playHead(m)
                    },
                    250);
                    return
                }
                if (!this.status.waitForLoad) {
                    this._html_checkWaitForPlay()
                }
            },
            _html_checkWaitForPlay: function() {
                if (this.status.waitForPlay) {
                    this.status.waitForPlay = false;
                    if (this.css.jq.videoPlay.length) {
                        this.css.jq.videoPlay.hide()
                    }
                    if (this.status.video) {
                        this.internal.poster.jq.hide();
                        this.internal.video.jq.css({
                            width: this.status.width,
                            height: this.status.height
                        })
                    }
                }
            },
            _html_volume: function(k) {
                if (this.html.audio.available) {
                    this.htmlElement.audio.volume = k
                }
                if (this.html.video.available) {
                    this.htmlElement.video.volume = k
                }
            },
            _html_mute: function(k) {
                if (this.html.audio.available) {
                    this.htmlElement.audio.muted = k
                }
                if (this.html.video.available) {
                    this.htmlElement.video.muted = k
                }
            },
            _flash_setAudio: function(m) {
                var k = this;
                try {
                    i.each(this.formats,
                    function(n, o) {
                        if (k.flash.support[o] && m[o]) {
                            switch (o) {
                            case "m4a":
                            case "fla":
                                k._getMovie().fl_setAudio_m4a(m[o]);
                                break;
                            case "mp3":
                                k._getMovie().fl_setAudio_mp3(m[o]);
                                break;
                            case "rtmpa":
                                k._getMovie().fl_setAudio_rtmp(m[o]);
                                break
                            }
                            k.status.src = m[o];
                            k.status.format[o] = true;
                            k.status.formatType = o;
                            return false
                        }
                    });
                    if (this.options.preload === "auto") {
                        this._flash_load();
                        this.status.waitForLoad = false
                    }
                } catch(l) {
                    this._flashError(l)
                }
            },
            _flash_setVideo: function(m) {
                var k = this;
                try {
                    i.each(this.formats,
                    function(n, o) {
                        if (k.flash.support[o] && m[o]) {
                            switch (o) {
                            case "m4v":
                            case "flv":
                                k._getMovie().fl_setVideo_m4v(m[o]);
                                break;
                            case "rtmpv":
                                k._getMovie().fl_setVideo_rtmp(m[o]);
                                break
                            }
                            k.status.src = m[o];
                            k.status.format[o] = true;
                            k.status.formatType = o;
                            return false
                        }
                    });
                    if (this.options.preload === "auto") {
                        this._flash_load();
                        this.status.waitForLoad = false
                    }
                } catch(l) {
                    this._flashError(l)
                }
            },
            _flash_resetMedia: function() {
                this.internal.flash.jq.css({
                    width: "0px",
                    height: "0px"
                });
                this._flash_pause(NaN)
            },
            _flash_clearMedia: function() {
                try {
                    this._getMovie().fl_clearMedia()
                } catch(k) {
                    this._flashError(k)
                }
            },
            _flash_load: function() {
                try {
                    this._getMovie().fl_load()
                } catch(k) {
                    this._flashError(k)
                }
                this.status.waitForLoad = false
            },
            _flash_play: function(l) {
                try {
                    this._getMovie().fl_play(l)
                } catch(k) {
                    this._flashError(k)
                }
                this.status.waitForLoad = false;
                this._flash_checkWaitForPlay()
            },
            _flash_pause: function(l) {
                try {
                    this._getMovie().fl_pause(l)
                } catch(k) {
                    this._flashError(k)
                }
                if (l > 0) {
                    this.status.waitForLoad = false;
                    this._flash_checkWaitForPlay()
                }
            },
            _flash_playHead: function(l) {
                try {
                    this._getMovie().fl_play_head(l)
                } catch(k) {
                    this._flashError(k)
                }
                if (!this.status.waitForLoad) {
                    this._flash_checkWaitForPlay()
                }
            },
            _flash_checkWaitForPlay: function() {
                if (this.status.waitForPlay) {
                    this.status.waitForPlay = false;
                    if (this.css.jq.videoPlay.length) {
                        this.css.jq.videoPlay.hide()
                    }
                    if (this.status.video) {
                        this.internal.poster.jq.hide();
                        this.internal.flash.jq.css({
                            width: this.status.width,
                            height: this.status.height
                        })
                    }
                }
            },
            _flash_volume: function(k) {
                try {
                    this._getMovie().fl_volume(k)
                } catch(l) {
                    this._flashError(l)
                }
            },
            _flash_mute: function(k) {
                try {
                    this._getMovie().fl_mute(k)
                } catch(l) {
                    this._flashError(l)
                }
            },
            _getMovie: function() {
                return document[this.internal.flash.id]
            },
            _getFlashPluginVersion: function() {
                var k = 0,
                m;
                if (window.ActiveXObject) {
                    try {
                        m = new ActiveXObject("ShockwaveFlash.ShockwaveFlash");
                        if (m) {
                            var l = m.GetVariable("$version");
                            if (l) {
                                l = l.split(" ")[1].split(",");
                                k = parseInt(l[0], 10) + "." + parseInt(l[1], 10)
                            }
                        }
                    } catch(n) {}
                } else {
                    if (navigator.plugins && navigator.mimeTypes.length > 0) {
                        m = navigator.plugins["Shockwave Flash"];
                        if (m) {
                            k = navigator.plugins["Shockwave Flash"].description.replace(/.*\s(\d+\.\d+).*/, "$1")
                        }
                    }
                }
                return k * 1
            },
            _checkForFlash: function(k) {
                var l = false;
                if (this._getFlashPluginVersion() >= k) {
                    l = true
                }
                return l
            },
            _validString: function(k) {
                return (k && typeof k === "string")
            },
            _limitValue: function(m, l, k) {
                return (m < l) ? l: ((m > k) ? k: m)
            },
            _urlNotSetError: function(k) {
                this._error({
                    type: i.jPlayer.error.URL_NOT_SET,
                    context: k,
                    message: i.jPlayer.errorMsg.URL_NOT_SET,
                    hint: i.jPlayer.errorHint.URL_NOT_SET
                })
            },
            _flashError: function(k) {
                var l;
                if (!this.internal.ready) {
                    l = "FLASH"
                } else {
                    l = "FLASH_DISABLED"
                }
                this._error({
                    type: i.jPlayer.error[l],
                    context: this.internal.flash.swf,
                    message: i.jPlayer.errorMsg[l] + k.message,
                    hint: i.jPlayer.errorHint[l]
                });
                this.internal.flash.jq.css({
                    width: "1px",
                    height: "1px"
                })
            },
            _error: function(k) {
                this._trigger(i.jPlayer.event.error, k);
                if (this.options.errorAlerts) {
                    this._alert("Error!" + (k.message ? "\n\n" + k.message: "") + (k.hint ? "\n\n" + k.hint: "") + "\n\nContext: " + k.context)
                }
            },
            _warning: function(k) {
                this._trigger(i.jPlayer.event.warning, j, k);
                if (this.options.warningAlerts) {
                    this._alert("Warning!" + (k.message ? "\n\n" + k.message: "") + (k.hint ? "\n\n" + k.hint: "") + "\n\nContext: " + k.context)
                }
            },
            _alert: function(k) {
                alert("jPlayer " + this.version.script + " : id='" + this.internal.self.id + "' : " + k)
            },
            _emulateHtmlBridge: function() {
                var k = this;
                i.each(i.jPlayer.emulateMethods.split(/\s+/g),
                function(m, l) {
                    k.internal.domNode[l] = function(n) {
                        k[l](n)
                    }
                });
                i.each(i.jPlayer.event,
                function(m, n) {
                    var l = true;
                    i.each(i.jPlayer.reservedEvent.split(/\s+/g),
                    function(p, o) {
                        if (o === m) {
                            l = false;
                            return false
                        }
                    });
                    if (l) {
                        k.element.bind(n + ".jPlayer.jPlayerHtml",
                        function() {
                            k._emulateHtmlUpdate();
                            var o = document.createEvent("Event");
                            o.initEvent(m, false, true);
                            k.internal.domNode.dispatchEvent(o)
                        })
                    }
                })
            },
            _emulateHtmlUpdate: function() {
                var k = this;
                i.each(i.jPlayer.emulateStatus.split(/\s+/g),
                function(m, l) {
                    k.internal.domNode[l] = k.status[l]
                });
                i.each(i.jPlayer.emulateOptions.split(/\s+/g),
                function(m, l) {
                    k.internal.domNode[l] = k.options[l]
                })
            },
            _destroyHtmlBridge: function() {
                var k = this;
                this.element.unbind(".jPlayerHtml");
                var l = i.jPlayer.emulateMethods + " " + i.jPlayer.emulateStatus + " " + i.jPlayer.emulateOptions;
                i.each(l.split(/\s+/g),
                function(n, m) {
                    delete k.internal.domNode[m]
                })
            }
        };
        i.jPlayer.error = {
            FLASH: "e_flash",
            FLASH_DISABLED: "e_flash_disabled",
            NO_SOLUTION: "e_no_solution",
            NO_SUPPORT: "e_no_support",
            URL: "e_url",
            URL_NOT_SET: "e_url_not_set",
            VERSION: "e_version"
        };
        i.jPlayer.errorMsg = {
            FLASH: "jPlayer's Flash fallback is not configured correctly, or a command was issued before the jPlayer Ready event. Details: ",
            FLASH_DISABLED: "jPlayer's Flash fallback has been disabled by the browser due to the CSS rules you have used. Details: ",
            NO_SOLUTION: "No solution can be found by jPlayer in this browser. Neither HTML nor Flash can be used.",
            NO_SUPPORT: "It is not possible to play any media format provided in setMedia() on this browser using your current options.",
            URL: "Media URL could not be loaded.",
            URL_NOT_SET: "Attempt to issue media playback commands, while no media url is set.",
            VERSION: "jPlayer " + i.jPlayer.prototype.version.script + " needs Jplayer.swf version " + i.jPlayer.prototype.version.needFlash + " but found "
        };
        i.jPlayer.errorHint = {
            FLASH: "Check your swfPath option and that Jplayer.swf is there.",
            FLASH_DISABLED: "Check that you have not display:none; the jPlayer entity or any ancestor.",
            NO_SOLUTION: "Review the jPlayer options: support and supplied.",
            NO_SUPPORT: "Video or audio formats defined in the supplied option are missing.",
            URL: "Check media URL is valid.",
            URL_NOT_SET: "Use setMedia() to set the media URL.",
            VERSION: "Update jPlayer files."
        };
        i.jPlayer.warning = {
            CSS_SELECTOR_COUNT: "e_css_selector_count",
            CSS_SELECTOR_METHOD: "e_css_selector_method",
            CSS_SELECTOR_STRING: "e_css_selector_string",
            OPTION_KEY: "e_option_key"
        };
        i.jPlayer.warningMsg = {
            CSS_SELECTOR_COUNT: "The number of css selectors found did not equal one: ",
            CSS_SELECTOR_METHOD: "The methodName given in jPlayer('cssSelector') is not a valid jPlayer method.",
            CSS_SELECTOR_STRING: "The methodCssSelector given in jPlayer('cssSelector') is not a String or is empty.",
            OPTION_KEY: "The option requested in jPlayer('option') is undefined."
        };
        i.jPlayer.warningHint = {
            CSS_SELECTOR_COUNT: "Check your css selector and the ancestor.",
            CSS_SELECTOR_METHOD: "Check your method name.",
            CSS_SELECTOR_STRING: "Check your css selector is a string.",
            OPTION_KEY: "Check your option name."
        }
    }));
    return a
},
["/static/common/ui/jquery/jquery.js"]);
F.module("/static/question/ui/audio/audio.js",
function(c, g) {
    var e = c("/static/common/lib/tangram/base/base.js"),
    h = c("/static/common/ui/jquery/jquery.js"),
    f = c("/static/common/ui/log/log.js");
    c("/static/question/ui/audio/jplayer/jplayer.js");
    window.jQuery = h;
    window.clickTarget;
    function a() {
        statusOpt.errorStatus = 1;
        e(window.clickTarget).closest(".audio").find(".audio-length").css("font-size", "12px").text("音频文件已损坏，暂无法播放")
    }
    function b() {
        var n = "",
        m, l = {
            loadingStatus: 0,
            endStatus: 0,
            errorStatus: 0
        };
        n = ['<div id="jquery_jplayer_1" class="jp-jplayer"></div>', '<div id="jp_container_1" class="jp-audio">', '<a class="jp-play">play</a>', '<a class="jp-stop">stop</a>', "</div>"].join("");
        e("body").append(n);
        m = h("#jquery_jplayer_1");
        m.jPlayer({
            ready: function(o) {
                h(this).jPlayer("setMedia", {
                    mp3: "http://img.baidu.com/img/iknow/qb/init.mp3"
                })
            },
            loadstart: function() {
                l.loadingStatus = 1
            },
            playing: function(o) {
                l.loadingStatus = 0
            },
            ended: function() {
                l.endStatus = 1
            },
            error: function() {
                a()
            },
            swfPath: "http://img.baidu.com/img/iknow/qb/Jplayer.swf",
            supplied: "mp3",
            wmode: "window"
        });
        window.myPlayer = m;
        window.statusOpt = l
    }
    function d(p) {
        var n = e(p),
        l = Math.round(n.attr("len") / 1000),
        t = 0,
        o = "",
        s,
        r = n.attr("src");
        o = ['<div class="audio" id="audio-' + r + '">', '<span class="audio-left"></span>', '<span class="audio-middle"><span class="icon-default"></span></span>', '<span class="audio-right"></span>', '<span class="audio-length ml-10">' + l + '"</span>', "</div>"].join("");
        n.after(o).remove();
        s = e("#audio-" + r);
        var m = 36,
        q = 200;
        t = m + (q - m) * (l / 30);
        if (t > q) {
            t = q
        }
        if (s.closest(".answer-mine").size() || s.closest(".wgt-recommend").size() || s.closest(".wgt-special").size() || s.closest(".wgt-best").size()) {
            s.find(".audio-middle").addClass("green")
        }
        s.find(".audio-middle").width(t)
    }
    function j(l, n, m) {
        clearInterval(n);
        e(l).find(".icon-default").removeClass().addClass("icon-default");
        e.object.each(m,
        function(p, o) {
            m[o] = 0
        });
        statusOpt = m
    }
    function i(o, m) {
        if (o == (e(".audio", m).size() - 1)) {
            return
        } else {
            var l = o + 1,
            n = e(".audio", m)[l];
            e(".audio-middle", n).mousedown().mouseup()
        }
    }
    function k() {
        var l = "",
        m = 1;
        b();
        e("ikaudio").each(function(o, q) {
            var s, n = e(q).attr("src"),
            r,
            p = 0;
            d(q);
            s = e("#audio-" + n);
            if (s.closest(".answer").find(".from-wap-link").size()) {
                s.closest(".answer").find(".from-wap-link").text("知道客户端语音回答")
            }
            s.find(".audio-middle").mousedown(function(u) {
                u.preventDefault();
                window.clickTarget = u.target;
                var t = this;
                myPlayer.jPlayer("stop");
                j(t, r, statusOpt);
                e(t).parent().addClass("click");
                f.send({
                    type: 2014,
                    action: "click",
                    pos: "qb-audio",
                    page: "qb-new",
                    isCurrentUser: m
                });
                m = 0
            }).mouseup(function(v) {
                v.preventDefault();
                var u = this,
                t = 1;
                e(u).parent().removeClass("click");
                if (((l == n) && p)) {
                    myPlayer.jPlayer("stop");
                    j(u, r, statusOpt);
                    p = 0;
                    return
                }
                myPlayer.jPlayer("setMedia", {
                    mp3: "/api/ikaudio?aid=" + n
                });
                l = n;
                myPlayer.jPlayer("play");
                p = 1;
                r = setInterval(function() {
                    if (!statusOpt.errorStatus) {
                        if (!statusOpt.endStatus) {
                            if (l == n) {
                                var w = e(u).find(".icon-default");
                                if (e.browser.ie < 9) {
                                    statusOpt.loadingStatus = 0
                                }
                                if (statusOpt.loadingStatus) {
                                    w.removeClass().addClass("icon-default icon-loading")
                                } else {
                                    switch (t) {
                                    case 1:
                                        w.removeClass().addClass("icon-default icon-first");
                                        t = 2;
                                        break;
                                    case 2:
                                        w.removeClass().addClass("icon-default icon-second");
                                        t = 3;
                                        break;
                                    case 3:
                                        w.removeClass().addClass("icon-default icon-third");
                                        t = 1;
                                        break;
                                    default:
                                        t = 1;
                                        w.removeClass().addClass("icon-default");
                                        break
                                    }
                                }
                            } else {
                                j(u, r, statusOpt);
                                p = 0
                            }
                        } else {
                            j(u, r, statusOpt);
                            p = 0
                        }
                    } else {
                        j(u, r, statusOpt);
                        p = 0
                    }
                },
                300)
            })
        })
    }
    g.init = k;
    return g
},
["/static/common/lib/tangram/base/base.js", "/static/common/ui/jquery/jquery.js", "/static/common/ui/log/log.js", "/static/question/ui/audio/jplayer/jplayer.js"]);
F.module("/static/question/ui/inner-link/inner-link.js",
function(e, b) {
    var d = e("/static/common/lib/tangram/base/base.js"),
    g = e("/static/common/ui/log/log.js"),
    c = e("/static/common/ui/event/event.js");
    var a = F.context("relateWords");
    var f = function(i) {
        var h = {};
        d.object.each(a,
        function(n, m) {
            var o = /\d*$/g.exec(m)[0],
            p = F.context("answers");
            if (typeof(n) == "undefined" || n.length == 0) {
                return
            } else {
                if (p[o] && p[o].insertLinkType > 0) {
                    return
                }
            }
            var l = d("#" + m).html();
            var j = l.match(/<a[^>]*>.*?<\/a>/g);
            if (j) {
                for (var k = 0; k < j.length; k++) {
                    l = l.replace(j[k], "&&&_###" + k)
                }
            }
            d.array(n).each(function(t, r) {
                if (r == "") {
                    return
                }
                if (l.indexOf(r) > -1 && !h[m + "-" + r]) {
                    h[m + "-" + r] = true;
                    var q = new RegExp(r, "g"),
                    s = 0;
                    l = l.replace(q,
                    function(u) {
                        s++;
                        return s < 4 ? '<a class="inner-link" href="#" target="_blank" rel="nofollow" data-word="' + t + '"></a>': u
                    })
                }
            });
            if (j) {
                for (var k = 0; k < j.length; k++) {
                    l = l.replace("&&&_###" + k, j[k])
                }
            }
            if (l != d("#" + m).html()) {
                d("#" + m).html(l).find(".inner-link").each(function(q, r) {
                    var s = n[d(r).data("word")];
                    if (F.context("qb_youyisi") == "1") {
                        d(r).html(s).attr("href", "/ues/index?word=" + encodeURIComponent(s) + "&fr=qb_search_exp&qb_ues_exp=1&ie=utf8").attr("log", "pos:innerLink")
                    } else {
                        d(r).html(s).attr("href", "/search?word=" + encodeURIComponent(s) + "&fr=qb_search_exp&ie=utf8").attr("log", "pos:innerLink")
                    }
                    d(r).addClass(["decor-unline", "decor-dotted", "decor-none"][i] || "")
                });
                c.fire("log.init", {
                    query: "#" + m + " .inner-link",
                    type: 2014
                })
            }
        })
    };
    b.init = f;
    return b
},
["/static/common/lib/tangram/base/base.js", "/static/common/ui/log/log.js", "/static/common/ui/event/event.js"]);
F.module("/static/widget/question/answers/answers.js",
function(d, h) {
    var f = d("/static/common/lib/tangram/base/base.js");
    var b = d("/static/question/ui/evaluate/evaluate.js");
    var g = d("/static/common/ui/log/log.js");
    var m = [],
    n = [],
    k = null,
    a = null,
    l = null,
    i = null,
    j = null,
    c = f.url.getQueryValue(location.search, "pn") || "0";
    init = function() {
        if (f(".wgt-best,.wgt-recommend,.wgt-special").size() == 0 && f(".wgt-answers").size()) {
            f("#wgt-answers").removeClass("answer-foldable")
        }
        m = f(".answer-foldable .answer-fold");
        n = f(".answer-hide");
        k = f(".wgt-pager");
        if (f("#wgt-answers").size() && n.size() == f("#wgt-answers .answer").size() && f("#wgt-answers answer-mine").size() == 0) {
            if (c == "0") {
                if (!F.context("user").isAsker) {
                    f("#wgt-answers").hide()
                }
                b.reflow()
            } else {
                f("#wgt-answers").addClass("reply-hide-only")
            }
        }
        if ((m.size() || n.size()) && k.size() && c == "0") {
            k.hide()
        }
        if (m.size()) {
            i = f('<div id="show-fold-container"/>').insertBefore(m.get(0));
            a = f('<div id="show-answer-fold"/>').html("查看更多其他回答<span></span>").appendTo(i);
            a.click(function(r) {
                e();
                b.reflow()
            }).mouseover(function(r) {
                f(this).addClass("hover")
            }).mouseout(function(r) {
                f(this).removeClass("hover")
            })
        }
        if (n.size()) {
            j = f('<div id="show-hide-container"/>').insertBefore(n.get(0));
            l = f('<div id="show-answer-hide"/>').html("查看被隐藏回答<span></span>").appendTo(j);
            l.click(function(r) {
                showHide();
                b.reflow()
            }).mouseover(function(r) {
                f(this).addClass("hover")
            });
            f.on(l, "mouseout",
            function(r) {
                f(this).removeClass("hover")
            });
            if (i) {
                j.hide()
            }
        }
        var q = f("#wgt-answers .answer-mine").eq(0),
        p = q.size() ? q.parent().attr("id") : null,
        o = p && q.parent().hasClass("answer-fold") && f("#wgt-answers").hasClass("answer-foldable");
        myAnswerHide = p && q.parent().hasClass("answer-hide");
        if (p && !(o || (myAnswerHide && m.size()))) {
            setTimeout(function() {
                f(document).scrollTop(q.offset().top - 70)
            },
            200)
        }
        if (myAnswerHide && m.size() == 0) {
            showHide()
        }
        b.reflow()
    };
    function e() {
        if (i.hasClass("folding")) {
            if (j) {
                j.hide();
                if (j.hasClass("folding")) {
                    showHide()
                }
            }
            m.addClass("answer-fold");
            if (k.size() && n.size() == 0 && c == "0") {
                k.hide()
            }
            i.removeClass("folding");
            a.html("查看更多其他回答<span></span>");
            g.send({
                type: 2014,
                area: "rank3",
                action: "foldclick"
            })
        } else {
            if (j) {
                j.show()
            }
            m.removeClass("answer-fold").children().first().removeClass("line");
            if (k.size() && n.size() == 0) {
                k.show()
            }
            i.addClass("folding");
            a.html("收起<span></span>");
            g.send({
                type: 2014,
                area: "rank3",
                action: "showfoldclick"
            })
        }
    }
    showHide = function() {
        if (j.hasClass("folding")) {
            n.addClass("answer-hide");
            if (k.size() && c == "0") {
                k.hide()
            }
            j.removeClass("folding");
            l.html("查看被隐藏回答<span></span>");
            g.send({
                type: 2014,
                area: "rank3",
                action: "hideclick"
            })
        } else {
            n.removeClass("answer-hide").children().first().removeClass("line");
            if (k.size()) {
                k.show()
            }
            j.addClass("folding");
            l.html("收起<span></span>");
            g.send({
                type: 2014,
                area: "rank3",
                action: "showhideclick"
            })
        }
    };
    h.insertBast = function() {
        var p = F.context("answers");
        var o = [];
        f.object.each(p,
        function(r, q) {
            o.push({
                timestamp: +r.c_timestamp,
                id: q
            })
        });
        o.sort(function(r, q) {
            return r.timestamp - q.timestamp
        });
        f('<span class="fastest-rep-btn ml-5">最快回答</span>').appendTo(f("#answer-" + o[0].id).find(".info"))
    };
    init();
    return h
},
["/static/common/lib/tangram/base/base.js", "/static/question/ui/evaluate/evaluate.js", "/static/common/ui/log/log.js"]);
F.module("/static/widget/question/ask/ask.js",
function(f, d) {
    var e = f("/static/common/lib/tangram/base/base.js"),
    b = f("/static/common/ui/dialog/dialog.js"),
    c = f("/static/common/ui/placeholder/placeholder.js"),
    h = f("/static/common/ui/log/log.js");
    f("/static/common/ui/baidu/baidu.js");
    e.sio("http://cp.zhidao.baidu.com/v.php?q=" + F.context("page").qid).callByServer(function(i) {
        i = parseInt(i, 10);
        var j = e("#v-times").html("|").show();
        e("<span/>").addClass("browse-times").html(" 浏览" + i + "次").insertAfter(j)
    });
    var a = F.context("cmsTopic");
    var g = F.context("answers");
    e.forEach(a,
    function(i) {
        if (i.expert) {
            e.forEach(g,
            function(j) {
                if (typeof(j.userName) != "undefined" && e.array.contains(i.expert.split(","), j.userName)) {
                    if (e("#cms-topic").size()) {
                        e("#cms-topic").attr("href", i.url).html(i.title)
                    } else {
                        e("#ask-info").append('<span class="f-pipe">|</span> 相关专题：<a id="cms-topic" rel="nofollow" href="' + i.url + '" target="_blank">' + i.title + "</a>")
                    }
                }
            })
        }
    });
    if (e(".app-banner-container").size()) {
        e(".app-banner-container").one("click",
        function() {
            h.send({
                type: 2014,
                action: "click",
                page: "question",
                area: "qb_flash_banner"
            })
        });
        e(document).click(function(j) {
            if (e(j.target).closest(".app-banner-container .app-banner-default").size()) {
                var i = e(".app-banner-test");
                if (i.hasClass("hide")) {
                    i.removeClass("hide")
                } else {
                    i.addClass("hide")
                }
            } else {
                if (e(j.target).closest(".app-banner-test").size()) {
                    return
                } else {
                    e(".app-banner-test").addClass("hide")
                }
            }
        })
    }
    return d
},
["/static/common/lib/tangram/base/base.js", "/static/common/ui/dialog/dialog.js", "/static/common/ui/placeholder/placeholder.js", "/static/common/ui/log/log.js", "/static/common/ui/baidu/baidu.js"]);
F.module("/static/widget/question/push/push.js",
function(a, e) {
    var c = a("/static/common/lib/tangram/base/base.js");
    a("/static/common/ui/baidu/baidu.js");
    var h = a("/static/common/ui/dialog/dialog.js");
    var g = a("/static/common/ui/event/event.js");
    var d = a("/static/common/ui/log/log.js");
    var b = 0;
    var i = 0;
    var k = {
        path: "/",
        expires: "",
        domain: location.host.replace(/:\d+/, "")
    };
    function f(n, m, o) {
        if (! (n && c.isObject(n))) {
            return
        }
        if (n.CPLN > 0) {
            if (n.type == 1) {
                c.cookie.set("CPLN", n.CPLN, k);
                c.cookie.set("CPOFF", n.CPOFF, k)
            }
            if (b == 1) {
                if (n.CPLN <= 8) {
                    h.alert('<div class="push-nochange"><p>不能再换一批喽:(</p><p>推荐给您的问题就剩这么多了</p><p class="push-nochange-gray">请继续答题或者稍等查看我们为您推荐的新问题:)</p></div>', {
                        width: 400,
                        height: 250
                    })
                }
            }
            var l = "";
            c.forEach(n.list,
            function(q, p) {
                l += "<li>";
                if (n.CPLN > 0 && n.type == 1) {
                    l += '<span style="visibility:hidden;" class="grid-r i-del mt-10 ml-5" id="push-del-' + q.qid + '" title="不再推荐"></span>'
                }
                l += '<span class="grid-r f-aid">' + q.answerNum + "回答</span>";
                if (q.isHighValue == 1) {
                    l += '<img style="float:left;padding:7px 5px 0 5px;" title="很多人想知道这个问题的答案，期待您的帮助" width="18" height="16" align="absmiddle" alt="需要帮助" src="http://img.baidu.com/img/iknow/browse/icon-need-help.png" />'
                }
                if (q.score > 0) {
                    l += '<i class="i-wealth-big"></i><span class="f-red mr-5">' + q.score + "</span>"
                }
                l += '<a href="/question/' + q.qid + ".html?push=" + n.type + "&group=" + q.expGroup + (n.rpRecommand ? "&rpRecommand=" + n.rpRecommand: "&rpRecommand=c") + '" target="_blank" log="pms:newqb,pos:pushlist,page:qb-new" title="' + q.title + '">' + c.string(q.title).subByte(60, "...") + "</a>";
                if (q.isFromWap == 1) {
                    l += '<a class="i-from-wap ml-5" title="来自手机知道" href="/s/2011wapadv/index.html?fr=qbview&tab=1" target="_blank"></a>'
                }
                l += "</li>"
            });
            c(".wgt-push .bd").eq(0).html(l);
            g.fire("log.init", {
                key: 2014,
                query: ".wgt-push .bd a"
            })
        } else {
            if (i == 1) {
                c(".wgt-push .bd").html('<p class="del-zero">推荐给您的问题已经删完了！请继续答题或者稍等查看我们为您推荐的新问题：）<a href="http://zhidao.baidu.com/browse/?lm=2&fr=nw" target="_blank"><strong>现在就去回答&gt;&gt;</strong></a></p>');
                c(".wgt-push .ft").empty()
            }
        }
    }
    function j(l) {
        i = 1;
        b = 0;
        var m = c(l).attr("id").replace(/[^\d]/g, "");
        c.post("/submit/user", "cm=100580&qid=" + m,
        function(o, n, p) {
            c.fx.fadeOut(c(l).parent().get(0), {
                duration: 800,
                onafterfinish: function() {
                    var q = c(".wgt-push ul li").filter(function() {
                        return c(this).css("display") != "none" && c(this).css("opacity") != 0
                    });
                    if (q.size() == 0) {
                        c.get("/question/api/recommend?rn=5&type=1&t=" + ( + new Date()), f, "json")
                    }
                }
            })
        },
        "json")
    }
    c("#push-change").click(function(l) {
        l.preventDefault();
        b = 1;
        i = 0;
        c.get("/question/api/recommend?rn=5&t=" + ( + new Date()), f, "json")
    });
    c(".wgt-push ul").delegate(".i-del", "click",
    function(l) {
        j(this);
        l.preventDefault()
    }).delegate(".i-del", "mouseover",
    function(l) {
        c(this).addClass("i-del-hover")
    }).delegate(".i-del", "mouseout",
    function(l) {
        c(this).removeClass("i-del-hover")
    }).delegate("li", "mousemove",
    function(l) {
        c(this).find(".i-del").css("visibility", "visible")
    }).delegate("li", "mouseleave",
    function(l) {
        c(this).find(".i-del").css("visibility", "hidden")
    });
    d.addPvKey({
        push: "1"
    });
    return e
},
["/static/common/lib/tangram/base/base.js", "/static/common/ui/baidu/baidu.js", "/static/common/ui/dialog/dialog.js", "/static/common/ui/event/event.js", "/static/common/ui/log/log.js"]);
F.module("/static/widget/question/msm/msm.js",
function(c, a) {
    var b = c("/static/common/lib/tangram/base/base.js"),
    d = c("/static/common/ui/log/log.js");
    if (b(".evaluate-info").size()) {
        b("ul", b(".evaluate-info")[0]).each(function(e, g) {
            var h = 40,
            f = 470;
            b(g).find("li").each(function(j, k) {
                var i = b(k).width();
                h += i + 5;
                if (h > f) {
                    b(k).remove()
                }
            })
        });
        b(".evaluate-info").removeClass("hidden")
    }
    if (b(".rec-con").size()) {
        b(".rec-con").find("li").each(function(e, f) {
            b(f).click(function(h) {
                h.stopPropagation();
                var g = b(this).data("url");
                window.open(g + "&ofrom=qb&otype=recommendPage");
                d.send({
                    type: 2014,
                    pos: "msm_good_" + e,
                    msm_type: "recommendPage"
                })
            })
        })
    }
    return a
},
["/static/common/lib/tangram/base/base.js", "/static/common/ui/log/log.js"]);
F.module("/static/widget/question/replyer-best/replyer-best.js",
function(e, a) {
    var d = e("/static/common/lib/tangram/base/base.js");
    var c = e("/static/common/ui/tip/tip.js");
    var b = e("/static/common/ui/event/event.js");
    var f = e("/static/common/ui/log/log.js");
    a.init = function(k) {
        var g = [],
        h = [],
        j = {},
        m = d(["#best-answer-" + k, "#special-answer-" + k, "#recommend-answer-" + k].join(",")).find(".wgt-replyer-best"),
        l = ["<p>客服<strong>#{officialTotalNum}</strong>人</p><p>已回答专业问题<strong>#{openTotAns}</strong>个</p>", '<p><strong>#{openAnswerTimeStr}</strong></p><p style="color:#999;">近7天平均回答响应时间</p>', ['<div class="osite-rate"><p><span class="w40">很满意</span><span class="osite-rate-bar"><em style="width:#{openSatisBestRate}%;"></em></span><span>#{openSatisBestRate}%</span></p>', '<p><span class="w40">满意</span><span class="osite-rate-bar"><em style="width:#{openSatisGoodRate}%;"></em></span><span>#{openSatisGoodRate}%</span></p>', '<p><span class="w40">不满意</span><span class="osite-rate-bar osite-rate-bar-gray"><em style="width:#{openSatisBadRate}%;"></em></span><span>#{openSatisBadRate}%</span></p>', '<p style="color:#999;text-align:center;">近7天被评价共#{openSatisCommentCnt}次</p></div>'].join("")],
        i = F.context("answers")[k];
        if (!i) {
            return
        }
        d(["openOfficialNum", "openAdminNum", "openAssociateNum", "openAnswerTime", "openAnswerTimeStr", "openSatisRate", "openSatisBestRate", "openSatisGoodRate", "openSatisBadRate", "openSatisCommentCnt", "openTotAns"]).each(function() {
            j[this] = i.user[this] || ""
        });
        j.officialTotalNum = parseInt(j.openOfficialNum) + parseInt(j.openAdminNum) + parseInt(j.openAssociateNum) || 0;
        function n(r) {
            var q = r.data,
            p = g[q.index],
            o = p ? d(p.getTipBody()).parents(".ik-tip") : d();
            if (!o.contains(r.target) && r.target != q.elem) {
                p && p.hide();
                d(window).unbind("mousemove", n)
            }
        }
        m.find(".osite-answered, .osite-speed, .osite-satisfied-rate").each(function(o) {
            var p = this;
            d(this).mouseenter(function(q) {
                clearTimeout(h[o]);
                h[o] = setTimeout(function() {
                    if (!g[o]) {
                        g[o] = new c({
                            target: p,
                            width: 180,
                            skin: "ik-tip-white osite-info-tip",
                            closebox: false,
                            autoDispose: false,
                            direction: "down",
                            content: d.string(l[o]).format(j)
                        })
                    }
                    g[o].show()
                },
                70)
            }).mouseleave(function(q) {
                clearTimeout(h[o]);
                h[o] = setTimeout(function() {
                    d(window).bind("mousemove", {
                        index: o,
                        elem: p
                    },
                    n);
                    n(d.extend(q, {
                        data: {
                            index: o,
                            elem: p
                        }
                    }))
                },
                200)
            })
        });
        f.addPvKey({
            "company-info-show": 1
        });
        m.find(".osite-arrow-up").attr("title", "收起").click(function() {
            var o = this.className == "osite-arrow-up";
            this.className = "osite-arrow-" + (o ? "down": "up");
            this.setAttribute("title", o ? "展开": "收起");
            d.fx[o ? "collapse": "expand"](d(".ad-site-left-info")[0])
        })
    };
    return a
},
["/static/common/lib/tangram/base/base.js", "/static/common/ui/tip/tip.js", "/static/common/ui/event/event.js", "/static/common/ui/log/log.js"]);
F.module("/static/widget/question/share/share.js",
function(a, d) {
    var b = a("/static/common/lib/tangram/base/base.js");
    var c = a("/static/common/ui/log/log.js");
    var e = a("/static/common/ui/event/event.js");
    var f = a("/static/common/ui/dialog/dialog.js");
    var g = a("/static/common/ui/uri/uri.js");
    var i = function() {
        var k = "http://zhidao.baidu.com/question/" + F.context("page")["qid"] + ".html",
        m = "";
        if (F.context("page")["isAdopted"] == "1") {
            m = "我刚刚发现了一条特别有意思的精彩问答，小伙伴们都来围观一下吧。【问：" + F.context("page")["title"] + "】（分享自@百度知道）"
        } else {
            m = "这条提问太有意思了，小伙伴们，你们能来回答一下吗？【问：" + F.context("page")["title"] + "】（分享自@百度知道）"
        }
        var j = {
            text: m,
            url: k,
            pic: "http://img.baidu.com/img/logo-zhidao.gif"
        };
        b("#bdshare").attr("data", b.json.stringify(j));
        var l = {
            snsKey: {
                tsina: "312479806",
                tqq: "4889d932e5e04299a774282957f4ff9f"
            },
            bdComment: " ",
            bdDes: " "
        };
        b("#bdshell_js").attr("src", " http://share.baidu.com/static/js/shell_v2.js?t=" + new Date().getHours());
        b("#bdshare").find("a").each(function(n, o) {
            b(o).on("click",
            function() {
                k += "&fr=qb_" + b(o).attr("class");
                j.url = k;
                b("#bdshare").attr("data", b.json.stringify(j))
            })
        });
        e.on("share.asktoteam",
        function(o) {
            var n = F.context("page")["share.asktoteam.dialog"];
            if (n && n.show) {
                n.show();
                n.center()
            } else {
                F.context("page")["share.asktoteam.dialog"] = n = new f({
                    contentType: "frame",
                    titleText: "向团队求助",
                    content: g.qbasktoteam,
                    width: 430,
                    height: 320,
                    autoDispose: false,
                    autoRender: true
                })
            }
        });
        b("#ask-to-team").click(function(n) {
            c.send({
                type: 2014,
                area: "share",
                action: "team"
            });
            e.fire("share.asktoteam");
            n.preventDefault()
        })
    };
    var h = false;
    if (b("#wgt-share").offset().top <= b(window).scrollTop() + b(window).height()) {
        i();
        h = true
    } else {
        b(window).scroll(function(k) {
            var j = b(window).scrollTop() + b(window).height();
            if (!h && j > b("#wgt-share").offset().top - 150) {
                h = true;
                i()
            }
        })
    }
    return d
},
["/static/common/lib/tangram/base/base.js", "/static/common/ui/log/log.js", "/static/common/ui/event/event.js", "/static/common/ui/dialog/dialog.js", "/static/common/ui/uri/uri.js"]);
F.module("/static/widget/question/ad-right/ad-right.js",
function(c, a) {
    var b = c("/static/common/lib/tangram/base/base.js");
    var f = c("/static/common/lib/magic/Carousel/Carousel.js");
    c("/static/common/ui/baidu/baidu.js");
    c("/static/common/lib/magic/control/Carousel/$fx/$fx.js");
    c("/static/common/lib/magic/control/Carousel/$autoScroll/$autoScroll.js");
    var e = function() { (function() {
            var i = 171;
            var n = 174;
            var o, j;
            var g = [],
            m = b("#cms-scroll #cms-select"),
            p = b('<a href="#" id="position_left"></a>').appendTo(m),
            h = b('<a href="#" id="position_right"></a>'),
            k = F.context("cmsRight");
            if (typeof(k) == "undefined" || (k && !k.length)) {
                return
            }
            function l(q) {
                b("#cms-scroll #cms-select .site-select").removeClass("site-select");
                b("#cms-scroll #cms-select .site-disc").eq(q).addClass("site-select")
            }
            b.array(k).each(function(r, t) {
                if (t) {
                    var s = ['<a rel="nofollow" href="', t.url, '" target="_blank"', (r != 0 ? ' data-img="' + t.src + '"': ""), '">', (r == 0 ? '<img src="' + t.src + '" alt=""/>': ""), "</a>"].join("");
                    g.push({
                        content: s
                    });
                    var q = b('<a href="#" class="site-disc"></a>').data("index", r).appendTo(m);
                    if (r == 0) {
                        q.addClass("site-select")
                    }
                }
            });
            h.appendTo(m);
            instance = new f({
                items: g,
                orientation: "horizontal",
                viewSize: 1,
                originalIndex: 0,
                focusRange: {
                    min: 0,
                    max: 0
                },
                isLoop: true,
                autoScroll: {
                    interval: 3000
                },
                fx: {
                    duration: 500
                },
                button: {
                    enable: false
                }
            });
            instance.on("beforescroll",
            function(q) {
                b("#cms-scroll .tang-carousel-item a").each(function() {
                    if (b(this).data("img")) {
                        b("<img/>").prop("src", b(this).data("img")).appendTo(b(this));
                        b(this).data("img", "")
                    }
                });
                l(q.index)
            });
            instance.render("cms-mask");
            m.css("left", (135 - (34 + 13 * k.length) / 2) + "px");
            m.on("click", "a.site-disc",
            function(q) {
                instance.focus(b(this).data("index"));
                q.preventDefault()
            });
            p.click(function(q) {
                instance.focusPrev();
                q.preventDefault()
            });
            h.click(function(q) {
                instance.focusNext();
                q.preventDefault()
            });
            if (k.length == 1) {
                m.hide();
                b("#cms-select-shadow").hide()
            }
            b("#cms-scroll").mouseover(function(q) {
                q.stopPropagation();
                clearInterval(j);
                o = setInterval(function() {
                    if (i <= 141) {
                        clearInterval(o);
                        instance.stop();
                        return
                    }
                    i--;
                    n -= 0.9;
                    b("#cms-select-shadow").css("top", i + "px").next("#cms-select").css("top", n + "px")
                },
                5)
            }).mouseout(function(q) {
                q.stopPropagation();
                clearInterval(o);
                j = setInterval(function() {
                    if (i >= 171) {
                        clearInterval(j);
                        instance.start();
                        return
                    }
                    i++;
                    n += 0.9;
                    b("#cms-select-shadow").css("top", i + "px").next("#cms-select").css("top", n + "px")
                },
                5)
            })
        })(); (function() {
            var i = b(".evaluate-open"),
            h = b("#cms-scroll"),
            g = "/s/case_sp_conf.js?v=20121025";
            if (i.size() == 0 || h.size() == 0) {
                return
            }
            b.sio(g).callByBrowser(function() {
                if ("undefined" == typeof CaseSpreadConfig || !b.isObject(CaseSpreadConfig)) {
                    return
                }
                i.each(function(j, n) {
                    var l = n.id.split("-")[1],
                    m = F.context("answers")[l]["user"]["openSiteId"],
                    o;
                    if (m && CaseSpreadConfig[m]) {
                        o = CaseSpreadConfig[m];
                        if (b.isObject(o)) {
                            var k = b.string('<a href="#{url}" target="_blank"><img src="#{imgsrc}" /></a>').format(o);
                            if (b("#cms-company")) {
                                b("#cms-company").html(k)
                            } else {
                                b("<div/>").addClass("mt-15").html(k).appendTo(h)
                            }
                            return false
                        }
                    }
                })
            })
        })()
    };
    var d = false;
    if (b("#cms-slide-lazy").offset().top <= b(window).scrollTop() + b(window).height()) {
        d = true;
        e()
    } else {
        b(window).scroll(function(h) {
            var g = b(window).scrollTop() + b(window).height();
            if (!d && g > b("#cms-slide-lazy").offset().top - 150) {
                d = true;
                e()
            }
        })
    }
    return a
},
["/static/common/lib/tangram/base/base.js", "/static/common/lib/magic/Carousel/Carousel.js", "/static/common/ui/baidu/baidu.js", "/static/common/lib/magic/control/Carousel/$fx/$fx.js", "/static/common/lib/magic/control/Carousel/$autoScroll/$autoScroll.js"]);
F.module("/static/widget/question/value-comment/value-comment.js",
function(b, d) {
    var c = b("/static/common/lib/tangram/base/base.js");
    var i = b("/static/common/ui/tip/tip.js");
    var f = b("/static/common/ui/event/event.js");
    var g = b("/static/common/ui/dialog/dialog.js");
    var h = b("/static/common/ui/login/login.js");
    var e = b("/static/question/ui/comment/comment.js");
    var a = b("/static/question/ui/evaluate/evaluate.js");
    var j = b("/static/question/ui/evaluate/open/open.js");
    d.init = function(k) {
        var m = null,
        o = null,
        l = c("#comment-" + k),
        n = c("#evaluate-" + k);
        if (l.size()) {
            m = new e({
                target: l
            });
            m.init()
        }
        if (n.size()) {
            if (!n.hasClass("evaluate-open")) {
                o = new a({
                    type: 0,
                    target: n
                })
            } else {
                o = new j({
                    type: 1,
                    target: n
                })
            }
            o.init()
        }
    };
    return d
},
["/static/common/lib/tangram/base/base.js", "/static/common/ui/tip/tip.js", "/static/common/ui/event/event.js", "/static/common/ui/dialog/dialog.js", "/static/common/ui/login/login.js", "/static/question/ui/comment/comment.js", "/static/question/ui/evaluate/evaluate.js", "/static/question/ui/evaluate/open/open.js"]);
F.module("/static/widget/question/user/login-panel/login-panel.js",
function(b, f) {
    var d = b("/static/common/lib/tangram/base/base.js");
    var h = b("/static/common/ui/event/event.js");
    var e = b("/static/common/ui/log/log.js");
    var j = b("/static/common/ui/uri/uri.js");
    var k = b("/static/common/ui/tip/tip.js");
    var e = b("/static/common/ui/log/log.js");
    var c = null,
    a = new Date(),
    i = "http://passport.bdimg.com/passApi/js/wrapper.js?cdnversion=" + a.getFullYear() + a.getMonth() + a.getDate() + a.getHours() + a.getMinutes();
    function g() {
        var l = ["normal", "phone"];
        d("#login-tab li").on("mousedown",
        function() {
            if (c) {
                var m = 0;
                d(this).removeClass("disabled").children().first().removeClass("ik-lgtab-noshow ik-lgtab-moushow");
                if (this.id == "ik-lgtab-login") {
                    d("#ik-lgtab-loginph").addClass("disabled").children().first().addClass("ik-lgtab-noshow")
                } else {
                    m = 1;
                    d("#ik-lgtab-login").addClass("disabled").children().first().addClass("ik-lgtab-noshow")
                }
                c.switchTo(l[m])
            }
        }).on("mouseover",
        function() {
            if (d(this).hasClass("disabled")) {
                d(this).children().eq(0).addClass("ik-lgtab-moushow")
            }
        }).on("mouseout",
        function() {
            if (d(this).hasClass("disabled")) {
                d(this).children().eq(0).removeClass("ik-lgtab-moushow")
            }
        })
    }
    d.sio(i).callByBrowser(function() {
        passport.use("login", {
            tangram: true
        },
        function(n) {
            c = new n.passport.login({
                product: "ik",
                isPhone: false,
                safeFlag: 0,
                memberPass: true,
                charset: "GBK",
                u: location.href,
                staticPage: "http://zhidao.baidu.com" + j.v3Jump
            });
            var o = "login-kernel";
            d("#login-kernel").html("");
            c.render(o);
            var m = c.getElement("userName");
            var l;
            d(m).val("邮箱地址/用户名").css("color", "#ccc").on("focus",
            function(p) {
                if (this.value == "邮箱地址/用户名") {
                    this.value = ""
                }
                d(this).css("color", "#000").removeClass("ik-text-input-error");
                if (!d("#ik-lgtab-login").hasClass("disabled")) {
                    if (!l) {
                        l = new k({
                            target: d(this),
                            direction: "up",
                            skin: "ik-tip-zdlogin",
                            width: 115,
                            content: "邮箱也可以登录哦"
                        })
                    }
                    l.show()
                }
            }).on("blur",
            function() {
                l && l.hide()
            });
            c.on("beforeValidateAll",
            function(p) {
                if (m && (m.value == "邮箱地址/用户名")) {
                    m.value = ""
                }
                m = null
            });
            c.on("validateAllError",
            function(q) {
                var p = ["userName", "password", "verifyCode"];
                d.array(p).each(function(r, t) {
                    var s = c.getElement(t);
                    if (s && (s.style.display != "none") && (d.string(s.value).trim() == "")) {
                        d(s).addClass("ik-text-input-error");
                        return false
                    }
                    s = null
                })
            });
            c.on("loginError",
            function(p) {
                if (p.rsp.errInfo.no == 110024) {
                    p.rsp.errInfo.msg = "账号未激活，请到注册邮箱中激活"
                }
            });
            c.on("loginSuccess",
            function(p) {
                e.send({
                    type: 2014,
                    pos: "login-success"
                });
                setTimeout(function() {
                    window.location.reload(true)
                },
                60);
                p.returnValue = false
            });
            g();
            d(".pass-button-submit").attr("alog-action", "qb-login-btn")
        })
    });
    if (d("#ik-reg-goto").get(0)) {
        d("#ik-reg-goto").attr("href", "/misc/more/userreg?qb=1&oldurl=" + window.location.href)
    }
    return f
},
["/static/common/lib/tangram/base/base.js", "/static/common/ui/event/event.js", "/static/common/ui/log/log.js", "/static/common/ui/uri/uri.js", "/static/common/ui/tip/tip.js", "/static/common/ui/log/log.js"]);